[[20190608103555]] 『指定する列から参照するには』(プライム) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『指定する列から参照するには』(プライム)

氏名のみをファイル名とし、A1に【日付】、B1に【番号】、C1に【内容】と見出しを付けて、2行目よりそれぞれ入力しています。
別途、集計用ファイルに下記の通り、マクロを登録し、上記ファイルのA2より読み込めるようにしています。今回、指定する列から指定する列まで読み込むにはどうすればいいか教えて下さい。

Sub 出力()

  read_folder = Range("B2")
  read_row = Range("C2")
  read_col = Range("D2")
  read_file = Dir(read_folder & "\")
  Do While read_file <> ""
   output_end_row = Sheets("出力").Range("A65536").End(xlUp).Row
   Workbooks.Open read_folder & "\" & read_file
   input_end_row = Range("A65536").End(xlUp).Row
   Range(Cells(read_row, 1), Cells(input_end_row, read_col)).Copy
   ThisWorkbook.Sheets("出力").Activate
   Range("B" & output_end_row + 1).Select
   ActiveSheet.Paste
   Range("A" & output_end_row + 1).Select
   Selection = read_file
   Selection.Copy
   Range("A" & output_end_row + 1 & ":A" & Range("B65536").End(xlUp).Row).Select
   ActiveSheet.Paste
   Workbooks(read_file).Close
   read_file = Dir()
 Loop
End Sub

< 使用 Excel:Excel2019、使用 OS:Windows10 >


回答ではなく、確認だけ。

(1)
開いているファイルはエクセルブックではなく、csvファイルだったりしませんか?

(2)

 Range(Cells(read_row, 1), Cells(input_end_row, read_col)).Copy

↑で開いたブックの【何行目から】コピーするか、決めているのはどの部分かわかりますか?

(もこな2) 2019/06/08(土) 11:23


(1)については、xlsxファイルになります。

(2)については、このファイルをそのまま使用することは想定しておらず、参考までにこちらのマクロで質問しています。
例えば、B2からD65536までとすると、どういうマクロになりますか?
(プライム) 2019/06/08(土) 12:51


(1)については、Excelブックでまちがいないということですね。わかりました。

(2)は再度確認します。

 Range(Cells(read_row, 1), Cells(input_end_row, read_col)).Copy

最初に提示された上記コードで何行目からコピーするのか決めているのはどの部分か【わかりますか?】

(3)
追加で聞かれた
>B2からD65536までとすると、どういうマクロになりますか?
について、
アクティブシートのB2からD65536セルをコピー と解釈した場合

 ActiveSheet.Range("B2:D65536").Copy

でしょうか。
(ほかにもやり方があることは承知していますが、(2)で確認していることとかぶらないようにあえてこちらで答えてみました。)

(もこな2) 2019/06/08(土) 13:59


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.