
エクセル1シートのみを移動し、開いたシートは閉じたいのですが、
ネットで検索したものが、全シートの移動のみで、
1シートを移動し、閉じたいのです。
wbTo.Worksheets.Move After:=wbFrm.Worksheets(wbFrm.Worksheets.Count)
↓
wbTo.Worksheets(1).Move After:=wbFrm.Worksheets(wbFrm.Worksheets.Count)
ここだけ直したら、1シートの移動は出来たのですが、
不要なブックの閉じ方が分かりません。
どなたかわかる方いらっしゃいましたら、コードを教えてください。
よろしくお願いします。
Public Sub 複数エクセル1シート開いたブックへ移動()
Dim arrFileName As Variant 'ダイアログで選択した複数のブック名を配列で取得する
'GetOpenFilenameメソッドで、MultiSelect:=Trueとすると、ブックを複数選択できる。
arrFileName = Application.GetOpenFilename("Excelブック,*.xls?", MultiSelect:=True)
'ファイルを選択しなかった場合、処理を終了する
If TypeName(arrFileName) = "Boolean" Then: Exit Sub
Dim v As Variant '配列の各要素を格納する変数
Dim Flag As Boolean '最初に開いたブックか判定する変数
Dim wbTo As Workbook '2回目以降に開いたブックの参照用変数
Dim wbFrm As Workbook '最初に開いたブックの参照用変数
'GetOpenFilenameメソッドで取得した各ブックのフルパスの数だけループ
For Each v In arrFileName
Workbooks.Open FileName:=v 'Excelをひらく
If Flag Then '最初に開いたブックは処理しない
Set wbTo = ActiveWorkbook
'Moveメソッドで、2回目以降に開いたブックの1シートを、最初に開いたブックのシート末尾に移動する
wbTo.Worksheets(1).Move After:=wbFrm.Worksheets(wbFrm.Worksheets.Count)
Else
'最初に開いたブックの参照を割り当てる
Set wbFrm = ActiveWorkbook
End If
Flag = True
Next v
End Sub
No.1ベストアンサー
- 回答日時:
こんにちは
>不要なブックの閉じ方が分かりません。
「不要なブック」というのは、コピー元になっているブックという解釈でよいのでしょうか?
Workbook.Close
で、ブックを閉じることができます。
(ご提示のコードの場合なら、ブックは wbTo です)
ただし、変更しているので、上記のままでは、確認のダイアログが表示されます。
いちいち表示されては面倒でしょうから、移動したシートを残したままにしたいなら
wbTo.Close False
移動したシートは、無くして保存するのなら
wbTo.Close True
とすることで、実現できると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Visual Basic(VBA) 2つ目のコンボボックスが動作しません。 3 2023/03/25 12:29
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
VBA 実行時エラー 2147024893
-
元データ(ピボッド)を開かずマ...
-
VBA 別ブックからコピペしたい...
-
[Excel]ADODBでNull変換されて...
-
VBAで複数のブックを開かずに処...
-
マクロについて教えてください
-
エクセル共有化のトラブル
-
VBAで別ブックのシートを指定し...
-
VBA アプリケーション定義また...
-
Excelマクロ 該当する値の行番...
-
【VBA】全シートの計算式を全て...
-
VBA コードを実行すると画面が...
-
vbaでvbaProjectのパスワード解...
-
ワイルドカード「*」を使うとう...
-
2つ目のコンボボックスが動作...
-
ACCESSVBA からExcelの他ブック...
-
Excelのマクロコードについて教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
VBA 別ブックからコピペしたい...
-
別ブックをダイアログボックス...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
【Excel VBA】書き込み先ブック...
-
VBAで別ブックのシートを指定し...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBAで別のブックにシートをコピ...
-
VBA コードを実行すると画面が...
-
Excel2007VBAファイルの表示に...
-
VBAで複数のブックを開かずに処...
-
[Excel]ADODBでNull変換されて...
-
Excelファイルを開くとき、読み...
-
VBA 実行時エラー 2147024893
-
Excelマクロ 該当する値の行番...
-
Excel にて、 リストボックスの...
-
VBS Bookを閉じるコード
-
複数のエクセルファイルとシー...
-
【ExcelVBA】インデックスが有...
おすすめ情報