
No.3ベストアンサー
- 回答日時:
表示されてすべてのブックについて、セル結合の解除を行います。
(親ブックを除く)以下のマクロを、標準モジュールに登録してください。
Option Explicit
Public Sub セル結合解除()
Dim ms As Worksheet
Dim maxrow As Long
Dim bname
Dim wb As Workbook
Dim i As Long
Set ms = Worksheets("Sheet1")
'Sheet1の最大行取得
maxrow = ms.Cells(Rows.Count, 1).End(xlUp).Row
'表示されているブックを全件処理する
For i = 1 To Workbooks.Count
bname = Workbooks(i).Name
'ブック名が親ブック(マクロのあるブック)でないなら処理する
If bname <> ThisWorkbook.Name Then
Set wb = Workbooks(bname)
'そのブックのセル結合解除
Call kaijo(ms, maxrow, wb)
End If
Next
MsgBox ("完了")
End Sub
'セル結合解除
Private Sub kaijo(ByRef ms As Worksheet, ByVal maxrow As Long, ByRef wb As Workbook)
Dim wrow As Long
Dim sname As String
'Sheet1の1行から最終行まで繰り返す
For wrow = 1 To maxrow
sname = ms.Cells(wrow, 1).Value
'シート名が、処理中のブック中に存在するなら
If check_sheet(wb, sname) = True Then
'そのシートのセル結合を解除する
wb.Worksheets(sname).Range("B48").UnMerge
End If
Next
End Sub
'シート存在チェック
Private Function check_sheet(ByRef wb As Workbook, ByVal sname As String) As Boolean
Dim i As Long
'処理中のブック内の全シートをチェックする
For i = 1 To wb.Worksheets.Count
'シート名が同じなら、そのシートが存在する
If LCase(sname) = LCase(wb.Worksheets(i).Name) Then
check_sheet = True
Exit Function
End If
Next
check_sheet = False
End Function
No.2
- 回答日時:
補足要求です。
1.マクロを格納するのは、親ブックですか。それとも、他のマクロ専用のブックですか。
2.親ブック、子ブック1、子ブック2、子ブック3は既に開いている(オープンされている)前提で良いですか。
3.親ブックのsheet1の一列目に名前が入っているということですが、
名前が入っているセルはA1のみですか?、それとも、B1,C2・・・のように横にずらっと設定されているのですか?
4.子ブックの数は3個のみですか。(子ブック4,5等はない)
ありがとうございます。
1.マクロを格納するのは、親ブックですか。それとも、他のマクロ専用のブックですか。
>親ブックです
2.親ブック、子ブック1、子ブック2、子ブック3は既に開いている(オープンされている)前提で良いですか。
>はい、既に開いています
3.親ブックのsheet1の一列目に名前が入っているということですが、
名前が入っているセルはA1のみですか?、それとも、B1,C2・・・のように横にずらっと設定されているのですか?
>A列のみです。
A2.A3.A4・・・にシートの名前が入っています。
B列からO列までは他の情報が入っています。
4.子ブックの数は3個のみですか。(子ブック4,5等はない)
いいえ、18ファイルあります
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルを共有するとPCによっ...
-
VBAでブックを非表示で開いて処...
-
Excelで複数ブックの同一セルに...
-
エクセルで参照しているデータ...
-
【マクロ】【画像あり】ファイ...
-
【マクロ】【画像あり】❶ブック...
-
エクセルの関数 ENTERを押...
-
Excelで、複数ブックの複数シー...
-
フォルダ内の複数ファイルから...
-
Excelファイルをダブルクリック...
-
エクセル 複数のブックを一度...
-
Excel(2010)のフィルターが保...
-
外部ブック参照が#REF!になって...
-
参照したいブックのパス名に"["
-
Excelで指定範囲のデータ...
-
エクセルで別ブックをバックグ...
-
エクセル2016です。「ブッ...
-
フォルダ内の複数ブック・シー...
-
WorkBooksをオープンさせずにシ...
-
VBA:ワークブックを変数でActi...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】アクティブセルの時...
-
エクセルの関数 ENTERを押...
-
VBAでブックを非表示で開いて処...
-
エクセルを共有するとPCによっ...
-
WorkBooksをオープンさせずにシ...
-
エクセルで参照しているデータ...
-
Excelファイルをダブルクリック...
-
Excelでブックの共有を掛けると...
-
「ブックの共有」を有効にして...
-
Excel(2010)のフィルターが保...
-
Excelの新しい空白のブックを開...
-
同じフォルダへのハイパーリン...
-
フォルダ内の複数ファイルから...
-
エクセルで別ブックをバックグ...
-
別ブックから入力規則でリスト...
-
ブックのピボットを別ブックに...
-
エクセルでウィンドウの枠固定...
-
エクセルにおける,「ブック」...
-
Excelで複数ブックの同一セルに...
-
Excelで指定範囲のデータ...
おすすめ情報