
【やりたい事】
以下の手順をマクロにて実現したいです。画像添付あります
アドバイスorコードご存じの方、教えて下さい。宜しくお願いします
1リストブックにあるデータの対象の行のセルを、どこでも良いので選択【アクティブセルにする】
2同データと同じお客様番号をデータブック(別ブック)より探す
3見つかったら、データブックのE列に100を入力。また、A-E列までを黄色くする
4もしくは、同じお客様番号が無ければ、見つかれませんとメッセージを表示
【リストブック】
C:\Users\2020\OneDrive\マクロ\住所転記\リスト.xlsm
【データブック】
C:\Users\2020\OneDrive\マクロ\住所転記\データ.xlsx
【黄色について参考】
ColorIndex⇒ 6
カラー定数⇒ vbYellow
XlRgbColor列挙⇒ rgbYellow
#16進⇒ #FFFF00

No.2ベストアンサー
- 回答日時:
以下のマクロを標準モジュールに登録してください。
Public Sub お客様番号検索()
Dim wb2 As Workbook
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim lastrow1 As Long
Dim lastrow2 As Long
Dim row1 As Long
Dim row2 As Long
Dim custNo As String
If ActiveWorkbook.Name <> ThisWorkbook.Name Then
MsgBox ("アクティブなブックが" & ThisWorkbook.Name & "でない")
Exit Sub
End If
Set ws1 = ActiveSheet
If ws1.Name <> "Sheet1" Then
MsgBox ("アクティブなシートがSheet1でない")
Exit Sub
End If
row1 = ActiveCell.Row
lastrow1 = ws1.Cells(Rows.Count, "A").End(xlUp).Row
If row1 < 2 Or row1 > lastrow1 Then
MsgBox ("アクティブなセルが範囲外")
Exit Sub
End If
custNo = ws1.Cells(row1, "A").Value
Set wb2 = Workbooks("データ.xlsx")
Set ws2 = wb2.Worksheets("Sheet1")
ws2.Cells.Interior.Pattern = xlNone
lastrow2 = ws2.Cells(Rows.Count, "A").End(xlUp).Row
For row2 = 2 To lastrow2
If custNo = ws2.Cells(row2, "A").Value Then
ws2.Cells(row2, "E").Value = 100
ws2.Range("A" & row2 & ":E" & row2).Interior.Color = vbYellow
Exit Sub
End If
Next
MsgBox ("見つかれません")
End Sub
ありがとうございます
いきなり、期待どおりの動作をしました
これからご教授いただいた、コードを勉強させて頂きます
大変、ありがとうございます
No.1
- 回答日時:
補足要求です。
1.マクロ実行時、データブックである、データ.xlsxは既にオープンされているのでしょうか。
それとも、データ.xlsxはクローズした状態であり、マクロでデータ.xlsxをオープンするのでしょうか。
2.以下の処理をマクロで行うとありますが、これは、手作業の誤りではないでしょうか。
手作業で以下の処理を行ったのち、マクロを起動するのではないでしょうか。
下記の処理です。
「1.リストブックにあるデータの対象の行のセルを、どこでも良いので選択【アクティブセルにする】」
3.リストブックの対象となるシートのシート名は何でしょうか。
4.データブックの対象となるシートのシート名は何でしょうか。
tatsumaru77 様
リクエストありがとうございます
1. データ.xlsxは既にオープンとなっています
2.申し訳ございません。手作業の誤りです
>「1.リストブックにあるデータの対象の行のセルを、どこでも良いので>選択【アクティブセルにする】」
3. Sheet1 です
4. Sheet1 です
ご検討の程、宜しくお願いします
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【マクロ】数式を入力したい。カウントIFの範囲がつど変わる場合の数式の入力方法について
Excel(エクセル)
-
【マクロ】【相談】Excelブックとマクロを早く動くようにする為には?
Excel(エクセル)
-
【マクロ】変数に入れるコードを少しでも短くする為には?
Excel(エクセル)
-
-
4
【マクロ】実行時エラー '424': オブジェクトが必要です。 について
Excel(エクセル)
-
5
エクセルのリストについて
Excel(エクセル)
-
6
他のシートの検索
Excel(エクセル)
-
7
エクセルの設定、下へスクロールすると表のヘッダ項目がシートの列番号の部分に表示される
Excel(エクセル)
-
8
【マクロ】シート追加時に同じ名前のシートがあり、エラーの場合、メッセージを出し、次のコードへ進むには
Excel(エクセル)
-
9
Vba Declare Functionを使う環境依存文字が化ける
Visual Basic(VBA)
-
10
エクセルVBAで1004エラーになります
その他(Microsoft Office)
-
11
【マクロ】列を折りたたみ非表示したセルの内、可視セルをコピーするとがエラーとなる
Excel(エクセル)
-
12
【マクロ】エラー【#DIV/0!】が発生する場合の回避方法について
Excel(エクセル)
-
13
【マクロ】左のブックと右のブックにて、同じデータに水色をぬるためには?
Excel(エクセル)
-
14
エクセルシートの見出しの文字を大きくしたい
Excel(エクセル)
-
15
Dir関数のDo Whileステートメントにおける1回目と2回目のファイル名の呼出し方法の違い
Excel(エクセル)
-
16
エクセルで同じブックを開くについて
Excel(エクセル)
-
17
findメソッドで、10:00:01 を検索をして、メッセージボックスにセル番地と時間が表示できない
Excel(エクセル)
-
18
【マクロ】宣言は、何のためにするんですか???しなくても、普通に動いしまうのはなぜ?
Excel(エクセル)
-
19
vba テキストボックスとリフトボックスについて
Excel(エクセル)
-
20
特定のセルだけ結果がおかしいです。 関数はオートフィルでコピーしており、細かく見てもどこもおかしくあ
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAで保存しないで閉じると空の...
-
【マクロ】元データと同じお客...
-
【Excel VBA】マクロでExcel自...
-
マクロの保存先、開いてるすべ...
-
エクセル関数>参照ファイル名...
-
エクセルのvbaにて thisworkboo...
-
EXcelのマクロで相対パスでファ...
-
エクセル;相対パスを絶対パスへ...
-
エクセルで未保存に対するメッ...
-
EXCELのボタンによるマクロの登...
-
エクセルVBA 個人用マクロブッ...
-
エクセルで使用期限付きのブッ...
-
EXCELブックが勝手に開いて困っ...
-
excelで直前に参照していたブッ...
-
エクセルVBAで作成した別ブック...
-
複数のExcelファイルの印刷設定...
-
EXCELマクロで、開いてはいるが...
-
エクセルを開いて文字を打つ際...
-
複数のExcelブックから特定シー...
-
同一フォルダ内のファイルを開く
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】元データと同じお客...
-
VBAで保存しないで閉じると空の...
-
【Excel VBA】マクロでExcel自...
-
エクセル関数>参照ファイル名...
-
マクロの保存先、開いてるすべ...
-
エクセルのvbaにて thisworkboo...
-
エクセル;相対パスを絶対パスへ...
-
【Excel】マクロの保存先について
-
EXcelのマクロで相対パスでファ...
-
エクセルで未保存に対するメッ...
-
EXCELマクロで、開いてはいるが...
-
excelで直前に参照していたブッ...
-
エクセルを開いて文字を打つ際...
-
エクセルで使用期限付きのブッ...
-
EXCELのボタンによるマクロの登...
-
[フィルターオプションの設定]...
-
EXCELブックが勝手に開いて困っ...
-
【Excel】特定セルの内容をテキ...
-
エクセルVBA 個人用マクロブッ...
-
名前の変わるブックをアクティ...
おすすめ情報