質問: Nothing End Sub ### 試したこと IFやFINDを試そうとしたのですが、どの構文がよいのか分からず、本問合せに至った次第です。 ### 補足情報(言語/FW/ツール等のバージョンなど) EXCEL2010で試しています。
回答: すでにほかの方からのアドバイスにもある通り、実現方法はいくつかあります。 自分からはFind関数を使った方法をご紹介します。 ``` Sub PasteFromCSV() Const CSV_FILE = "c:\temp\command.txt" Dim ReadWBk As Workbook Dim WriteWBk As Workbook Dim WriteSht As Worksheet Dim Rng As Range Set WriteWBk = ActiveWorkbook Set WriteSht = WriteWBk.ActiveSheet Set ReadWBk = Workbooks.Open(CSV_FILE) 'Set Rng = ReadWBk.Worksheets.Item(1).UsedRange 'Range("A1:A170").Copy Dim ReadSht As Worksheet Dim rngStart As Range '開始セル Dim rngEnd As Range '終了セル Set ReadSht = ReadWBk.Worksheets.Item(1) Set rngStart = ReadSht.Range("A:A").Find("大阪") Set rngEnd = ReadSht.Range("A:A").Find("福岡") If rngStart Is Nothing Then '開始セルが見つからなければA1にセット Set rngStart = ReadSht.Cells(1, "A") End If If rngEnd Is Nothing Then '終了セルが見つからなければA列最終行にセット Set rngEnd = ReadSht.Cells(ReadSht.Cells(Rows.Count, "A").End(xlUp).Row, "A") End If '開始セルから終了セルまでをコピー Range(rngStart, rngEnd).Copy WriteSht.Range("A1").PasteSpecial xlPasteValues, xlPasteSpecialOperationNone, False, False ReadWBk.Close Set ReadWBk = Nothing End Sub ``` テキストファイルをシートに取り込んだ後、Find関数で大阪のセルと福岡のセルをFind関数で検索し、大阪セル~福岡セルの範囲を範囲コピーしています。 参考になれば幸いです。