【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?

Aというフォルダの配下に、B,Cというフォルダがあります。

Bには、b1ファイルとb2ファイルがあり、
Cには、c1ファイルがあります。

Aフォルダにa1ファイルをおき、a1ファイル内にある
ボタンを押すと、Bフォルダのb1ファイルとb2ファイル
Cフォルダのc1ファイルをすべてAフォルダ直下にコピーする
ようにするにはどうすればいいでしょうか?

dosコマンドで実行するようにはできるかと思いますが
vbaでやる方法を教えて下さい。

A 回答 (4件)

>dosコマンドで実行するようにはできるかと思いますが


>vbaでやる方法を教えて下さい。
 「dosコマンド」は自力でできそうなので、それとは別に エクセル の マクロ でやりたい
というような意味ですか?

 でしたら、ザクッとした説明ですが、下記のようなことかと。。。


【下準備】
1)[Alt] + [F11] キー を押下して、[VBE(Visual Basic Editor)] を開きます。

2)[挿入(I)] - [標準モジュール(M)] で コードウィンドウ を開きます。

3)現われた コードウィンドウ に下記を コピペ します。
'-- ここから ----------------------------------------------------
Sub Macro1()
Dim myPath As String
myPath = ThisWorkbook.Path & "\"
FileCopy myPath & "B\b1.xls", myPath & "b1.xls"
FileCopy myPath & "B\b2.xls", myPath & "b2.xls"
FileCopy myPath & "C\c1.xls", myPath & "c1.xls"
End Sub
'-- ここまで ----------------------------------------------------

4)[Alt] + [F4] で [VBE] を閉じます。


【ボタン への マクロ の登録】


●「a1ファイル内にあるボタン」が「オートシェープ」または「フォーム の コマンド ボタン」のとき

1)「ボタン」を 右クリック - [マクロの登録(N)...] を クリック します。

2)[マクロの登録] ダイアログ の一覧で「Macro1」を クリックし、[マクロ名(M):] の下の ボックス に「Macro1」と表示されたのを確認して、[OK] します。


●「a1ファイル内にあるボタン」が「コントロール ツールボックス の コマンド ボタン」のとき
1)「コントロール ツールボックス」の「デザイン モード」を クリック します。

2)「ボタン」を 右クリック - [コードの表示(V)] を クリック します。

3)現われた
Private Sub CommandButton1_Click()

End Sub
というような コード の間に、上記の「Dim myPath As String」以下の5行を コピペ し、最終的に下記のようになるようにします。
'-- ここから ----------------------------------------------------
Private Sub CommandButton1_Click()
Dim myPath As String
myPath = ThisWorkbook.Path & "\"
FileCopy myPath & "B\b1.xls", myPath & "b1.xls"
FileCopy myPath & "B\b2.xls", myPath & "b2.xls"
FileCopy myPath & "C\c1.xls", myPath & "c1.xls"
End Sub
'-- ここまで ----------------------------------------------------

 ただし、「CommandButton1」の部分は、(2) で 右クリック した ボタン によって変わります。

4)[Alt] + [F4] で [VBE] を閉じます。

5)「コントロール ツールボックス」の「デザイン モードの終了」を クリック します。

【a1ファイル内にあるボタンを押す作業】
 それぞれの ボタン を クリック するだけです。
    • good
    • 0

#2です。


>dosコマンドで実行するようにはできるかと
Sub test01()
'Call Shell("Command.com /c dir")
'Call Shell("Command.com /c mkdir テストA")
Call Shell("Command.com /c mkdir テストA\テストB")
End Sub
出できるようです。(エクセルVBAのモジュールでテスト)
.
    • good
    • 0

>a1ファイル内にあるボタンを押すと


意味不明。VBAはエクセル?ボタンであればシートかユーザーフォーム上?
ーーー
ファイルのコピー
・WSHを使う
http://www.moug.net/tech/exvba/0060067.htm
・VBS(FSO)をつかう
http://officetanaka.net/excel/vba/filesystemobje …
    • good
    • 0

>Aフォルダにa1ファイルをおき、a1ファイル内にあるボタンを押すと、



「a1ファイル内にあるボタン」ってなに?

a1ファイルってどういうファイル?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!