No.1ベストアンサー
- 回答日時:
こんにちは!
一例です。
画像ではSheet1にコマンドボタンを配置されているようですが
一旦↓のコードを標準モジュールにコピー&ペーストしてみてください。
Sub Sample1() 'この行から
Dim i As Long, j As Long, k As Long, c As Range, wS1 As Worksheet, wS2 As Worksheet
Set wS1 = Worksheets("Sheet1")
Set wS2 = Worksheets("Sheet2")
i = wS2.Cells(Rows.Count, 1).End(xlUp).Row
j = wS2.Cells(1, Columns.Count).End(xlToLeft).Column
Range(wS2.Cells(2, 2), wS2.Cells(i, j)).ClearContents
'A班操作
For i = 2 To wS1.Cells(Rows.Count, 1).End(xlUp).Row
Set c = wS2.Range("A:A").Find(what:=wS1.Cells(i, 1), LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
k = c.Row
For j = 2 To wS2.Cells(1, Columns.Count).End(xlToLeft).Column
If WorksheetFunction.Count(Range(wS1.Cells(i, 2), wS1.Cells(i, 4))) = 2 Then
If wS2.Cells(1, j) >= wS1.Cells(i, 2) And wS2.Cells(1, j) <= wS1.Cells(i, 4) Then
wS2.Cells(k, j) = "○"
End If
Else
If wS2.Cells(1, j) = wS1.Cells(i, 2) Then
wS2.Cells(k, j) = "○"
End If
End If
Next j
End If
Next i
'B班操作
For i = 2 To wS1.Cells(Rows.Count, 5).End(xlUp).Row
Set c = wS2.Range("A:A").Find(what:=wS1.Cells(i, 5), LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
k = c.Row
For j = 2 To wS2.Cells(1, Columns.Count).End(xlToLeft).Column
If WorksheetFunction.Count(Range(wS1.Cells(i, 6), wS1.Cells(i, 8))) = 2 Then
If wS2.Cells(1, j) >= wS1.Cells(i, 6) And wS2.Cells(1, j) <= wS1.Cells(i, 8) Then
wS2.Cells(k, j) = "△"
End If
Else
If wS2.Cells(1, j) = wS1.Cells(i, 6) Then
wS2.Cells(k, j) = "△"
End If
End If
Next j
End If
Next i
End Sub 'この行まで
次にコマンドボタンのコードを↓にして、コマンドボタンをクリックしてみてください。
Private Sub CommandButton1_Click()
Call Sample1
End Sub
こんなんではどうでしょうか?m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Excel(エクセル) 請求書と領収書の作成 4 2022/11/10 16:13
- その他(Microsoft Office) Excelで総数量を変動させたい 2 2022/11/04 23:49
- Excel(エクセル) Excelで質問です! 現在マクロを勉強中の初心者です。 以下のような表から、会社名が空白のもの以外 2 2022/06/14 12:16
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- Excel(エクセル) Excel シートに画像が貼ってあり、クリックすると入力シートにジャンプする機能 1 2023/01/14 22:41
- Excel(エクセル) セルによって印刷するシートを変える方法 EXCEL-VBA 2 2022/08/01 20:48
- Excel(エクセル) EXCEL ActiveX コマンドボタンで実行する前にいったんmsgBoxで確認を求めたい 1 2022/07/06 19:41
- Visual Basic(VBA) VBA 複数のブックに同じ列を表示させる方法 2 2022/07/20 23:49
- Excel(エクセル) 【VBA】PDF出力に任意のファイル名前を付ける方法 3 2023/07/21 10:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトが実行中か...
-
コマンドプロンプトで表示が多...
-
ttlで戻り値を取得する方法
-
バッチファイルでキー操作を行う。
-
VBユーザーフォームで時間入力
-
TEXの表の位置が・・・
-
シリアル通信でコマンドを送信...
-
PowerShellにおけるコマンドの...
-
別のユーザーフォームのコマン...
-
dosバッチ起動後、画面を閉じな...
-
コマンドプロンプトですべてのU...
-
[WSH|JS|VB] telnetコマンドの...
-
Tera Term Proに関する質問です。
-
delphiでtelnet(indy)
-
シェルスクリプト
-
数十マイクロ秒単位でスリープ...
-
入力待ち状態になるexeファイル...
-
RTX1100の削除コマンド
-
ルーターにつながっている全て...
-
ディスクの空き容量を取得する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチファイルでキー操作を行う。
-
コマンドプロンプトが実行中か...
-
コマンドプロンプトで表示が多...
-
ttlで戻り値を取得する方法
-
別のユーザーフォームのコマン...
-
VBユーザーフォームで時間入力
-
Tera Term Proに関する質問です。
-
RTX1100の削除コマンド
-
コマンドキーがないんですけど...
-
コマンドプロンプトですべてのU...
-
コンボボックス(最終行取得)
-
dosバッチ起動後、画面を閉じな...
-
EEPROMのデータの初期化について
-
ルーターにつながっている全て...
-
文字の点滅はどうやるのですか?
-
PowerShell実行結果をデスクト...
-
デフォルトのショートカットキ...
-
TEXの表の位置が・・・
-
アンドロイドでも、robocopyは...
-
[WSH|JS|VB] telnetコマンドの...
おすすめ情報