このトピックに書きこむ |
---|
Re[3]: (削除) | |
---|---|
[194760] Re[3]: (削除)- ■記事引用/メール受信=OFF■ □投稿者/ どすん -(2022/02/27(15:14)) □U R L/ 一旦、ファイル名を取り出してみて、 ファイル名の検索に、InStr関数を使ってみてはいかがでしょう。 if InStr(fileName,"abc")>0 Then "abc"を文字列変数にすれば、使い回しも効きます。 この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 ++++++++++++++++++++ OS ⇒Windows XP Version⇒Excel 2007 ++++++++++++++++++++ |
[194759] (削除)- ■記事引用/メール受信=OFF■ □投稿者/ / -(2022/02/17(22:54)) □U R L/ この記事は削除されました |
[194758] Re[1]: 別のブックからデータをコピペする記述についてです。- ■記事引用/メール受信=OFF■ □投稿者/ 初出 -(2022/02/17(21:05)) □U R L/ 別のブックからデータをコピペする記述についてです。 投稿者 : クッキー 投稿日時 : 2022/02/17(Thu) 17:30:39 OS : Mac OS X ht tps://www.239-programing.com/cgi-bin/excelvba_bbs.cgi |
[194757] 別のブックからデータをコピペする記述についてです。- ■親トピック/記事引用/メール受信=ON■ □投稿者/ cookie -(2022/02/17(17:41)) □U R L/ 初めまして、 行いたい処理としては、 ・同じディレクトリに存在する、指定の文字を含むブックを探す ▼ ・存在する場合、そのブックを開いて、指定のセルからアクティブワークブックへコピペする ▼ ・指定の文字を含むブックが存在しない場合に、次の処理を行う といった作業を行いたいのですが、思う様にうまくいきません。 作業フローはシンプルだと思うのですが、やりたいことのネックとして、 ・参照するブック名がワイルドカード指定 ・ワールドカード指定が長いので、引数(変数?)を使いたいが、使い方や宣言のタイミングがどうもしっくりきていない だと感じております。 自分で途中まで書いていたvbaです▼ Sub TEST1() If Dir(ThisWorkbook.path & "/*" & "double" & "*.csv") <> "" Then '対象のファイルがあるかどうかの確認 'ある場合 Dim path As String path = Dir(ThisWorkbook.path & "/*" & "double" & "*.csv") Workbooks.Open(path).Worksheets(1).Range("B2:B200").Copy ThisWorkbook.Worksheets(1).Range("B2").Value Workbooks(path).Close savechanges:=False Else 'ない場合に次の処理に進んでほしい(空白でOK?) End If End Sub また、この指定の文字を変えて複数回行う場合のイメージもお伺いできると幸いです。(処理は同じで、調べたい文字のパターンが「abcを含む文字列」、「efgを含む文字列」など、30個くらいある場合など) どうかご教授ください、よろしくお願いいたします。 ご教授いただける際は、処理ごとにコメントもつけていただけると泣いて喜びます。 この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |