Page 198 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼マクロ作成時の躓き(ファイルネームの件) TAKA 02/10/12(土) 1:57 ┗Re:マクロ作成時の躓き(ファイルネームの件) ぴかる 02/10/12(土) 9:38 ┗Re:マクロ作成時の躓き(ファイルネームの件) ひで 02/10/12(土) 13:35 ┗Re:マクロ作成時の躓き(ファイルネームの... TAKA 02/10/12(土) 17:00 ┗Re:マクロ作成時の躓き(ファイルネームの... ひで 02/10/12(土) 18:13 ┗Re:マクロ作成時の躓き(ファイルネームの... TAKA 02/10/13(日) 12:58 ─────────────────────────────────────── ■題名 : マクロ作成時の躓き(ファイルネームの件) ■名前 : TAKA ■日付 : 02/10/12(土) 1:57 -------------------------------------------------------------------------
はじめまして ファイルオープン、コピー、貼り付け、貼り付け後ファイル保存のマクロを作成したいのですが 1, 001.CSVファイル B1 B67 C67 (B67+C67) D67 E67 F67 B24 B25セルをコピー 2, data.xlsファイル A1 B1 C1 D1 E1 F1 G1 H1 I1に貼り付け 3, data.xlsに貼り付け終了後、B1に記入されている文字をファイルネームとして保存 1,の001.CSVファイルは、固定ファイル名でなくどのような.CSVファイルでも読める様にする Range("B1").Select Selection.Copy Windows("Book1.xls").Activate Sheets("Sheet1").Select ActiveSheet.Paste Windows("001.CSV").Activate ← ↑ これでは、このファイル名でしかマクロが実行されず 当然なのですが例,004.CSV)のファイルですとマクロ実行時にエラーが出ます。 これをどの様なファイル名でもマクロが正常に終了出来る様に するのには、どの様に文字を入れればよいか教えて頂けないでしょうか 宜しくお願いいたします。 |
TAKAさん、こんにちは。 >Range("B1").Select > Selection.Copy > Windows("Book1.xls").Activate > Sheets("Sheet1").Select > ActiveSheet.Paste > Windows("001.CSV").Activate ← > ↑ >これでは、このファイル名でしかマクロが実行されず >当然なのですが例,004.CSV)のファイルですとマクロ実行時にエラーが出ます。 変数化すれば出来ますよ。よかったら、こんなんを参考にしてね。 Sub test() Dim Fname As String On Error GoTo エラー処理 Fname = Range("B1") & ".CSV" Windows(Fname).Activate エラー処理: MsgBox "《 " & Fname & " 》ってないよ!" End Sub |
▼ぴかる さん TAKAさん、こんにちは。 Dim abc ・ ・ 'ここまでにCSVファイルがアクティブになっている前提で abc = ActiveWorkbook.Name >>Range("B1").Select >> Selection.Copy >> Windows("Book1.xls").Activate >> Sheets("Sheet1").Select >> ActiveSheet.Paste Windows(abc).Activate 私も変数をつかってみました。 いかがでしょうか? |
ぴかる様、ひで様 ありがとうございました。 解決しエラー無しで終わる事が出来ました。 あと一点お伺いしたいのですが .CSVファイルを開く時は、普通にEXCELで開けるのですが 他のファイル(関連付けされていないテキスト形式ファイル)などを読み込みする 場合は、テキストウィザードが立ち上り、これも自動で行える様にしたいと思いまして このような事は、可能でしょうか? 区切り文字を(タブ、スペース)にチェック 宜しくお願いいたします。 |
▼TAKA さん: >解決しエラー無しで終わる事が出来ました。 よかったですね!でも"様"はかんべんしてくださーい(汗; >あと一点お伺いしたいのですが >.CSVファイルを開く時は、普通にEXCELで開けるのですが >他のファイル(関連付けされていないテキスト形式ファイル)などを読み込みする >場合は、テキストウィザードが立ち上り、これも自動で行える様にしたいと思いまして >このような事は、可能でしょうか? 区切り文字を(タブ、スペース)にチェック > >宜しくお願いいたします。 私もわからなかったので、マクロ記録をしてみました。 ChDir "C:\test1" ←ここ と ↓ ここ Workbooks.OpenText FileName:="C:\test1\新規テキスト文書.txt", StartRow:=1, _ DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter _ :=True, Tab:=True, Semicolon:=False, Comma:=False, Space:=True, Other _ :=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1)) " " の中をTAKAさんが必要としているものと変えてください。 わからないことは、一度マクロ記録するとコードが出ますから それをヘルプで調べると良いですよ。私もそーしてまーす。(まだまだですが・・) |
こんにちは 無事、完了いたいしました。 大変お世話になり有難う御座いました。 |