
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も見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
エクセルで期間に入っているかどうかの判定
Excel(エクセル)
-
エクセル 関数について質問です。
Excel(エクセル)
-
Excelを開くとエラーが出る
Excel(エクセル)
-
4
エクセルカレンダーに予定表を反映したいです。
Excel(エクセル)
-
5
エクセル、日々の集計整理方法。(再送です。)
Excel(エクセル)
-
6
excelの数式の書き方について。 以下のような数式をSheet1に書いています。 Sheet1のB
Excel(エクセル)
-
7
一つのセルに複数の関数を入力する方法
Excel(エクセル)
-
8
エクセルの住所から郵便番号を表示するには
Excel(エクセル)
-
9
【EXCEL】=セル&セルが上手く表示できない。
Excel(エクセル)
-
10
エクセル関数について
Excel(エクセル)
-
11
エクセルのデータの抽出について
Excel(エクセル)
-
12
Excelが消えた理由 会社でExcel(CSV形式ではない、Excelです)で昨日11時からデータ
Excel(エクセル)
-
13
入所時間(A1)と退所時間(B1)をセル(C1)に片方だけ表示したい
Excel(エクセル)
-
14
VLOOKUP が機能しない、その原因は何 ?
Excel(エクセル)
-
15
エクセルデーターの並び替え
Excel(エクセル)
-
16
エクセルで名前の定義で使える文字
Excel(エクセル)
-
17
マクロのコードを、少しでも削って短くしたい
Excel(エクセル)
-
18
条件付き書式で文字入力
Excel(エクセル)
-
19
エクセルシートのPDFでの保存
Excel(エクセル)
-
20
Excel 2019で質問があります。 計測器のデータをExcelで記録したんですが、1秒刻みで記録
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
VBAでブックを非表示で開いて処...
-
5
フォルダ内の複数ファイルから...
-
6
エクセルシートの一部を送りたい
-
7
エクセルを共有するとPCによっ...
-
8
Excelでブックの共有を掛けると...
-
9
エクセルで別ブックをバックグ...
-
10
エクセル2016です。「ブッ...
-
11
WorkBooksをオープンさせずにシ...
-
12
エクセルでSheetの数は最大限ど...
-
13
Excelで複数ブックの同一セルに...
-
14
エクセルで「ディスクがいっぱ...
-
15
Excel(2010)のフィルターが保...
-
16
エクセルで複数のシートを別フ...
-
17
外部ブック参照が#REF!になって...
-
18
Excelで指定範囲のデータ...
-
19
エクセルで50行ごとに区切った...
-
20
エクセル 複数のブックを一度...
おすすめ情報
公式facebook
公式twitter