excel名「a」~「a(99)」のSheetを一つのエクセルに移動させるマクロになってます
普通に移動させるとSheet名が「a」~「a(99)」になってしまうので「Sheet1」~「Sheet100」になるように直しています
マクロ初心者でうまく繰り返し機能が使えず一つずつ入力しました
下記マクロをどうすればスマートに繰り返しできるようになるか教えてください
Sub 読込み()
'
' 読込み Macro
'
'
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a.xlsx"
Sheets("a").Select
Sheets("a").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a").Select
Sheets("a").Name = "Sheet1"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (1).xlsx"
Sheets("a (1)").Select
Sheets("a (1)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (1)").Select
Sheets("a (1)").Name = "Sheet2"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (2).xlsx"
Sheets("a (2)").Select
Sheets("a (2)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (2)").Select
Sheets("a (2)").Name = "Sheet3"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (3).xlsx"
Sheets("a (3)").Select
Sheets("a (3)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (3)").Select
Sheets("a (3)").Name = "Sheet4"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (4).xlsx"
Sheets("a (4)").Select
Sheets("a (4)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (4)").Select
Sheets("a (4)").Name = "Sheet5"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (5).xlsx"
Sheets("a (5)").Select
Sheets("a (5)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (5)").Select
Sheets("a (5)").Name = "Sheet6"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (6).xlsx"
Sheets("a (6)").Select
Sheets("a (6)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (6)").Select
Sheets("a (6)").Name = "Sheet7"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (7).xlsx"
Sheets("a (7)").Select
Sheets("a (7)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (7)").Select
Sheets("a (7)").Name = "Sheet8"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (8).xlsx"
Sheets("a (8)").Select
Sheets("a (8)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (8)").Select
Sheets("a (8)").Name = "Sheet9"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (9).xlsx"
Sheets("a (9)").Select
Sheets("a (9)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (9)").Select
Sheets("a (9)").Name = "Sheet10"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (10).xlsx"
Sheets("a (10)").Select
Sheets("a (10)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (10)").Select
Sheets("a (10)").Name = "Sheet11"
Sheets(11)~Sheets(98)省略
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (98).xlsx"
Sheets("a (98)").Select
Sheets("a (98)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (98)").Select
Sheets("a (98)").Name = "Sheet99"
Workbooks.Open Filename:="C:\3D検査書\変換後データ\a (99).xlsx"
Sheets("a (99)").Select
Sheets("a (99)").Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets("a (99)").Select
Sheets("a (99)").Name = "Sheet100"
ActiveWorkbook.Save
End Sub
No.1ベストアンサー
- 回答日時:
以下のマクロでどうでしょうか。
Sub 読込み()
'
' 読込み Macro
'
Dim i As Long
Dim name As String
For i = 0 To 99
If i = 0 Then
name = "a"
Else
name = "a (" & i & ")"
End If
Workbooks.Open filename:="C:\3D検査書\変換後データ\" & name & ".xlsx"
Sheets(name).Select
Sheets(name).Move Before:=Workbooks("テキスト変換.xlsm").Sheets(1)
Sheets(name).Select
Sheets(name).name = "Sheet" & (i + 1)
Next i
ActiveWorkbook.Save
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) excelVBAについて。 4 2022/11/21 16:15
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
- Excel(エクセル) ExcelVBAについて。 2 2022/12/10 20:08
- Visual Basic(VBA) Excelのマクロ ブック間である範囲をコピー Workbooks(“a.xlsx“).Sheets 3 2022/05/12 17:02
- Visual Basic(VBA) excelVBAについて。 1 2022/11/30 06:16
- Excel(エクセル) excelVBAについて。 8 2022/12/11 13:47
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
- Excel(エクセル) エクセル VBAでシートのコピーを作りたい 1 2023/05/18 07:42
- Visual Basic(VBA) Excel VBAシートの色を一気に変える方法 1 2022/03/27 23:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/01/27 13:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
セル内の文字列が日本語か英語...
-
EBCDIC⇒SJIS変換の方法
-
VBAでbmp画像をASCIIデータとし...
-
ふりがなをアルファベット化す...
-
「彡」って文字はなんという文...
-
EBCDICへの変換
-
ExcelVBA実行後に時々落ちる
-
10進数→2進数への変換
-
std::stringからLPCWSTR型への変換
-
COBOLによる全角・半角混...
-
英数字を含む文字列(0-9,A-Z)...
-
%fと%gについて
-
COBOLのデータ型
-
VBでIMEの変換文字列を拾いたい
-
画像データ(png)をcsvファイル...
-
コード変換ライブラリについて
-
Symfowareでのデータ型変換につ...
-
教えてください!!
-
S-JIS → JIS コード変換するには
-
X86アセンブラで 16進数を10進...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EBCDIC⇒SJIS変換の方法
-
セル内の文字列が日本語か英語...
-
「彡」って文字はなんという文...
-
std::stringからLPCWSTR型への変換
-
VS 2008(VB.NET)
-
ExcelVBA実行後に時々落ちる
-
ふりがなをアルファベット化す...
-
Excelマクロにて30分単位の計算...
-
英数字を含む文字列(0-9,A-Z)...
-
Symfowareでのデータ型変換につ...
-
JIS → S-JIS コード変換するには
-
sedで日本語の置換方法について
-
COBOLによる全角・半角混...
-
フォームのコントロールのバッ...
-
数字5桁文字コード?
-
バイナリデータ→ASCII 変換プ...
-
2バイト文字をJEFからSJISに変...
-
CString ←→ BSTRの変換について
-
VBScript ASC関数:文字エンコ...
-
入力した文字を全て自動で全角...
おすすめ情報