戻る  □一般操作のサロン  □ 使用方法  □ 新着記事  □ 新規に質問する!  □ トピック一覧  □ 検索  □ 過去ログ
[ 最新記事及び返信フォームをトピックトップへ ]
このトピック参照回数 :
複数のブック(CSV)の特定の列を一つのブックにまとめたい

    [196237] 複数のブック(CSV)の特定の列を一つのブックにまとめたい-

    ■親トピック/記事引用/メール受信=OFF■

    □投稿者/ VBA初心者 -(2024/06/18(15:46))
    □U R L/
      初めまして。
      VBA初心者で今勉強を頑張っています。
      一度頑張って作ってみたのですが力が足りず作成できませんでした。
      やりたいこととしては
      ・複数のCSVデータの特定の一列(B列のみ)を任意の一つのエクセルにまとめたいです。
      ・CSVデータ名やシートの名前は連続性を持たせることが可能です(1.csv 2.csv 3.csv ,,,)
      私なりに作ってみたのがこちらです。
      
      Sub file_tensya()
          
          
          Dim A, B, C, D
          
          For i = 1 To 4
              For j = 1 To 3000
                  With ActiveSheet
                      A = ThisWorkbook.Path 
                      B = Format(i, "000") & ".csv"
                      C = "Sheet1" 'シート名
                      D = Cells(j + 2, 15).Address 'o列範囲選択
                      '数式を使って、別ブックを参照
                      .Cells(j, i) = "='" & A & "\[" & B & "]" & C & " '!" & D
                      '数式を値に変換
                      .Cells(j, i).Value = .Cells(j, i).Value
                  End With
              Next
          Next
          
              
      End Sub
      
      新しいプログラミングでも問題ないので回答のほうをお願いしたいです。


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [196243] Re[1]: 複数のブック(CSV)の特定の列を一つのブックにまとめたい-

    記事引用/メール受信=OFF■

    □投稿者/ マナ -(2024/06/20(16:52))
    □U R L/

      > C = "Sheet1" 'シート名

      シート名は Format(i, "000") ではありませんか?




    [196246] Re[2]: 複数のブック(CSV)の特定の列を一つのブックにまとめたい-

    記事引用/メール受信=OFF■

    □投稿者/ VBA初心者 -(2024/06/21(09:39))
    □U R L/
      Sub file_tensya()
          
          
          Dim A, B, C, D
          
          For i = 1 To 4
              For j = 1 To 5
                  With ActiveSheet
                      A = ThisWorkbook.Path
                      B = Format(i, "000") & ".csv"
                      C = Format(i, "000")
                      D = Cells(j + 2, 15).Address 'o列範囲選択
                      '数式を使って、別ブックを参照
                      .Cells(j + 2, i) = "='" & A & "\[" & B & "]" & C & " '!" & D
                      '数式を値に変換
                      .Cells(j + 2, i).Value = .Cells(j, i).Value
                  End With
              Next
          Next
          
              
      End Sub
      
      これでも全部#REFになってしまい動きませんでした。
      ,xlsxだと動いたのは確認してます。
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他




    [196247] Re[3]: 複数のブック(CSV)の特定の列を一つのブックにまとめたい-

    記事引用/メール受信=OFF■

    □投稿者/ マナ -(2024/06/21(10:48))
    □U R L/

      > これでも全部#REFになってしまい動きませんでした。

      でしたら、7ブックとしてして開いてコピペしてはどうですか。




    [196279] Re[4]: 複数のブック(CSV)の特定の列を一つのブックにまとめたい-

    記事引用/メール受信=OFF■

    □投稿者/ jindon -(2024/09/03(20:37))
    □U R L/
      >D = Cells(j + 2, 15).Address 'o列範囲選択
      O列3行目からの読み込みですね?
      
      Sub test()
          Dim myDir$, fn$, t&, cols
          With Application.FileDialog(msoFileDialogFolderPicker)
              If .Show Then myDir = .SelectedItems(1) & "\"
          End With
          If myDir = "" Then Exit Sub
          fn = Dir(myDir & "*.csv")
          cols = [sequence(1,500,9,0)]
          cols(15) = 1
          Application.ScreenUpdating = False
          With Sheets("sheet1")
              .UsedRange.Value = ""
              Do While fn <> ""
                  t = t + 1
                  .Cells(1, t) = fn
                  With .QueryTables.Add("TEXT;" & myDir & fn, .Cells(2, t))
                      .TextFileStartRow = 3
                      .TextFileCommaDelimiter = True
                      .TextFileColumnDataTypes = cols
                      .Refresh
                      .Delete
                  End With
                  fn = Dir
              Loop
              .Columns.AutoFit
          End With
          Application.ScreenUpdating = True
      End Sub
      


      この記事にはVBAのコードが含まれています。

      緑の太文字→注釈
      茶色の太文字→条件分岐
      赤の太文字→ループ
      青の太文字→その他



      ++++++++++++++++++++
      OS      ⇒Windows 11
      Version⇒Office365
      ++++++++++++++++++++



このトピック内容の全ページ数 / [0]

このトピックに書きこむ
Name/
E-Mail/

└>このツリーのレス記事をメールで受信しますか? YES/ NO/
Title/
URL/
Comment/ 通常モード->  図表モード-> (←の場合適当に改行を入れて下さい)
タグが使用できます。例 ⇒ <font color="blue">文字</font>
解決!!ありがとうございました! 解決       保留中です・・・ 保留        迷宮入りorほかあたって見ます・・ 迷宮入       すいませ〜ん。誰か〜! Help! ←※回答者専用
解決したらチェック       保留(コードテスト中など・・)         解決不可orレスが全く付かなくてほかのサイトに行くときなど・・
削除キー/
(半角8文字以内) 


- Child Forum -
Edit:ゆう-G