A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは
いくつかの処理があると思いますが、どのあたりがわからないのでしょうか?
全体的に記しておくなら。
1)フォルダに格納されているファイル全てに対して~
フォルダが指定されているのなら、Dir関数等を利用して、「*.xlsx」ファイル等を順に検索して処理するループを行えば宜しいでしょう。
(FileSystemObjectを利用する方法でも可能です)
2)シート名の色づきを確認しにいき、~
個々のブックを開かないと確認はできません。
Workbooks.Open
Workbooks.Add
などで開くことができます。
その上で、(どのシートなのかわかりませんが)「シートの色づき」というのが、「シートのタブの色」のことであるのなら、
Worksheet.Tab.Color
で色を取得できますので、それで判断なされば良いでしょう。
(タブの色ではない場合は、そちらを調べるようにしてください)
もしも、全シートを調査したいのなら、
For Each sht In Worksheets
のような感じでループすれば良いです。
3)もし色がついている場合は別ファイルにシート名を記載する
別ファイル(=開いておく必要があります)の記載を始めるセル位置を変数に入れておいて、
シート名を記載するなら、
変数.Value = Worksheet.Name
Set 変数 = 変数.Offset(1)
などとするようにしておけば、変数は常に次に記載するセルを示すことになるので、順次記入してゆくことが可能になります。
No.1
- 回答日時:
方法
フォルダを選ぶ
Dirでファイルを確認
Workbooks.Open で開く
For Each sht In Worksheetsですべてのシートをループ
.Tab.ColorIndex <> xlNone で色のついてるタグで分岐処理
Sub EXample()
Dim folderPath As String, Bk As String
Dim ThisSht As Worksheet
Dim sht As Worksheet
Dim n As Long
Set ThisSht = ActiveSheet
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "フォルダの選択"
.InitialFileName = CreateObject("WScript.Shell").SpecialFolders("Desktop")
If .Show = True Then
folderPath = .SelectedItems(1) & "\"
Else
Exit Sub
End If
End With
Application.ScreenUpdating = False
Bk = Dir(folderPath & "*.xls*")
Do Until Bk = ""
Workbooks.Open folderPath & Bk
For Each sht In Worksheets
If sht.Tab.ColorIndex <> xlNone Then
n = n + 1
ThisSht.Cells(n, 1) = Bk
ThisSht.Cells(n, 2) = sht.Name
End If
Next
Workbooks(Bk).Close SaveChanges:=False
Bk = Dir
Loop
Application.ScreenUpdating = True
End Sub
全ファイル・・Excelで
全ファイル・・・どのブックか分らなくなりそうなので
コードを見ればわかると思いますが、実行ブックのアクティブシートに
ブック名 A列 シート名 B列
エラー処理はしていません
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Excel(エクセル) Excel VBA 指定フォルダに格納されている全エクセルファイルに指定シートを挿入する方法について 1 2022/08/22 11:53
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/26 09:50
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
VBAで条件によってシート見出しの色を変更したい
Excel(エクセル)
-
セルの値によって、シート見出しの色を変更したい
Visual Basic(VBA)
-
シート見出しの色を自動的に変更させたい
Excel(エクセル)
-
-
4
シート見出しの色を自動で変えるには
Excel(エクセル)
-
5
条件によって印刷するシートを変える方法 EXCEL-VBA
Excel(エクセル)
-
6
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
7
【Excel VBA】CSV取込時、数字の先頭の0を消えないようにするには?
Excel(エクセル)
-
8
特定の文字を含むシートだけマクロ処理をしたい
Visual Basic(VBA)
-
9
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
10
エクセルVBAのIf,Then 構文でOr条件とAnd条件の結合方法?
Excel(エクセル)
-
11
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
12
あるセルに文字が入力されるとシート見出しの色を自動で変更したい
その他(Microsoft Office)
-
13
括弧があるとHYPERLINKで飛べない?
Excel(エクセル)
-
14
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
15
excel vba 非表示のシートに入力するには?
その他(OS)
-
16
EXCEL VBA マクロ 実行する度に処理速度がどんどん遅くなる原因が知りたい
Excel(エクセル)
-
17
エクセルVBA Ifでシート名が合致したら別ファイルから転記する場合のElse IfとForの書き方
Visual Basic(VBA)
-
18
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
19
Excel VBA:特定の文字列以降(あるいは以前)のテキストをすべて取得する方法
Visual Basic(VBA)
-
20
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
【ExcelVBA】全シートのセルの...
-
ユーザーフォームに入力したデ...
-
【VBA】色のついたシート名を取得
-
セルの値によって、シート見出...
-
ブック名、シート名を他のモジ...
-
別のシートを参照して計算する方法
-
XL:BeforeDoubleClickが動かない
-
VBAで同じシート名のコピー時は...
-
マクロを使って、シート印刷完...
-
ExcelのVBAのマクロで他のシー...
-
VBA 存在しないシートを選...
-
VBA 最終行まで数式をコピーする
-
特定の文字を含むシートだけマ...
-
【Excel VBA】Worksheets().Act...
-
Access エクセルシート名変更
-
ExcelVBA シート名を複数セルか...
-
エクセルVBA 別シートからのコ...
-
同じ作業を複数のシートに実行...
-
実行時エラー'1004': WorkSheet...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
同じ作業を複数のシートに実行...
-
ExcelVBA シート名を複数セルか...
-
【ExcelVBA】全シートのセルの...
-
Excel マクロについての相談
-
VBA 存在しないシートを選...
-
実行時エラー'1004': WorkSheet...
-
特定の文字を含むシートだけマ...
-
ExcelのVBAのマクロで他のシー...
-
ブック名、シート名を他のモジ...
-
XL:BeforeDoubleClickが動かない
-
VBA 複数の各シートに行を追加...
-
エクセルのシート名変更で重複...
-
【Excel VBA】Worksheets().Act...
-
シートが保護されている状態で...
-
Excel VBA 複数行を数の分だけ...
-
for 文の 繰り返し処理に使える...
おすすめ情報