初めまして。
シート数は30程度。
列数は同じで行数はシートごと(最大30行)に異なります。
複数シートの期限には条件式書式で(期限切れは赤、期限切れ30日前は黄色)セルに色がついています。(期限切れ判断の日はTODAYを使用しています)
<シート1>
A B C D E
1 ○○○株式会社
2 車番 車検期限 保険期限 運転者名 免許期限
3 東京100 2021/1/1 2020/10/10 あいうえ 2020/12/12
4 千葉200 2019/1/1 2019/1/1 かきくけ 2020/8/8
5 ・ ・ ・ ・ ・
6 ・ ・ ・ ・ ・
.
.
30
<シート2>
A B C D E
1 △△△株式会社
2 車番 車検期限 保険期限 運転者名 免許期限
3 千葉200 2019/2/1 2019/2/1 さしすせ 2020/9/9
4 千葉200 2021/1/1 2021/1/1 たちつて 2020/8/8
5 ・ ・ ・ ・ ・
6 ・ ・ ・ ・ ・
.
.
30
↓
<抽出シート>
A B C D E
1 ○○○株式会社
2 車番 車検期限 保険期限 運転者名 免許期限
3 千葉200 2019/1/1 2019/1/1 かきくけ 2020/8/8
4
5 △△△株式会社
6 車番 車検期限 保険期限 運転者名 免許期限
7 千葉200 2019/2/1 2019/2/1 さしすせ 2020/9/9
8
9
vbaを使用して
セルに色がついているシートの
1行目 会社名
2行目以降の行ごとのデータを別シートに抽出したいと考えています。
よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
こんばんは!
一例です。
標準モジュールにしてください。
Sub Sample1()
Dim i As Long, j As Long, k As Long
Dim wS As Worksheet
Dim myFlg1 As Boolean, myFlg2 As Boolean
Application.ScreenUpdating = False
With Worksheets("抽出シート")
'//▼「抽出シート」のデータを一旦消去//
.Range("A:E").ClearContents
.Range("B:C,E:E").NumberFormatLocal = "yyyy/m/d"
'//▼ココから操作//
For k = 1 To Worksheets.Count
If Worksheets(k).Name <> .Name Then
Set wS = Worksheets(k)
For i = 2 To wS.Cells(Rows.Count, "A").End(xlUp).Row
For j = 2 To 5 '//←B~E列まで//
If wS.Cells(i, j).DisplayFormat.Interior.ColorIndex = 3 Or _
wS.Cells(i, j).DisplayFormat.Interior.ColorIndex = 6 Then
myFlg2 = True
Exit For
End If
Next j
If myFlg2 = True Then
If myFlg1 = False Then
.Cells(Rows.Count, "A").End(xlUp).Offset(2).Resize(2, 5).Value = wS.Range("A1").Resize(2, 5).Value
myFlg1 = True
End If
.Cells(Rows.Count, "A").End(xlUp).Offset(1).Resize(, 5).Value = wS.Cells(i, "A").Resize(, 5).Value
End If
myFlg2 = False
Next i
End If
myFlg1 = False
Next k
.Range("A1:E2").Delete shift:=xlUp
.Columns.AutoFit
.Activate
End With
Application.ScreenUpdating = True
MsgBox "完了"
End Sub
※ セルの塗りつぶしの色番号が異なると何も反応しません。
カラーインデックスの番号は
赤 → 3
黄 → 6
としています。m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- その他(車) 運転免許期限切れ失効を解っていながら運転して免許センターへ行ったら逮捕されますか 8 2023/08/08 11:12
- 会計ソフト・業務用ソフト 添付のエクセルの車検証・運転免許証の更新期限をパッとみて分かるようにしたいです。 エクセルの達人いま 1 2023/07/03 18:20
- 運転免許・教習所 今日で運転免許の有効期限が切れます、お金が無くて更新出来ませんでした。あと6か月は失効しないはずです 5 2022/03/22 15:57
- 運転免許・教習所 自分てんかんで担当の医師から診断書出してもらい 公安委員会に許可出してもらいました。 その後相談終了 2 2022/04/23 18:19
- 運転免許・教習所 免許の帯色について教えてください! 2 2022/05/07 14:39
- バイク免許・教習所 教習所について 2 2023/05/22 20:44
- 運転免許・教習所 自動車免許更新期間に目の手術 3 2022/06/12 09:56
- 会社・職場 自転車購入強制は普通なのか 2 2023/01/28 15:45
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
複数シートの色付きセルがある行を別シートに抽出
Excel(エクセル)
-
excelのデータで色つき行の抽出方について教えてください
Excel(エクセル)
-
セルに背景色がある行を別シートにコピー
その他(Microsoft Office)
-
-
4
VBマクロ 色の付いたセルを含む行をコピーしたい。
Visual Basic(VBA)
-
5
エクセルで色の付いたセルを抽出したいです
Excel(エクセル)
-
6
エクセルでマクロにてセル色と文字を他シートのセルへコピーしたい
その他(コンピューター・テクノロジー)
-
7
VBAで特定の文字を探して隣のセルに色を付けたい
Excel(エクセル)
-
8
VBA にて、条件付き書式で背景色を設定しているセルの範囲で、背景色付きのセルをカウントできる、VB
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別のシートから値を取得するとき
-
Excel マクロについての相談
-
別のシートを参照して計算する方法
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
VBA 最終行まで数式をコピーする
-
【ExcelVBA】全シートのセルの...
-
特定の文字を含むシートだけマ...
-
エクセルのマクロについて教え...
-
VBA 入力月で該当シートを選択...
-
一括印刷マクロ シート名を数字...
-
【ExcelVBA】動的にボタン、ボ...
-
VBA 存在しないシートを選...
-
同じ作業を複数のシートに実行...
-
ListViewの画面の更新
-
実行時エラー1004「Select メソ...
-
シートが保護されている状態で...
-
エクセルで通し番号を入れてチ...
-
【VBA】指定した検索条件に一致...
-
ユーザーフォームに入力したデ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
別のシートから値を取得するとき
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
excelのマクロで該当処理できな...
-
XL:BeforeDoubleClickが動かない
-
ExcelVBA シート名を複数セルか...
-
実行時エラー'1004': WorkSheet...
-
VBA 存在しないシートを選...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ブック名、シート名を他のモジ...
-
【Excel VBA】Worksheets().Act...
-
ExcelのVBAのマクロで他のシー...
-
エクセルのシート名変更で重複...
-
特定の文字を含むシートだけマ...
-
シートが保護されている状態で...
-
Excel マクロについての相談
-
VBA 検索して一致したセル...
おすすめ情報