
Excel VBAで、特定の範囲の空白セルを探して行番号を表示させる方法を探しています。
教えていただけたらとてもありがたいです。
以下が作りたいマクロのイメージです。
①エラーチェック用のブックを作り、空白セルの数を調べたいブック名とシート名を記入する場所を作る。
記入したブックとそのシートをマクロで開いて、その特定の範囲から空白セルを検索してその空白セルの行番号をエラーチェック用のブックのE7~に入力する。
②調べたい範囲→P21:V21 この7列のデータが記入されている一番下のセルまでを調べて、その中から空白セルを検索したい。
一番下のセルはデータが増えると変わるので、最初から範囲指定ができません。データが記入されている一番最後のセルまでを自動で調べてほしい。
③空白セルを調べ終わったら最後に自動でそのブックを閉じる。
そういうマクロを作りたいです。
仕事で使う便利なマクロを作らなくてはならず、エラーチェック用のブックにブック名とシート名を記入してマクロを実行すれば、そのブックとシートを自動で開いて特定の範囲の記入漏れの空白セルを調べて行番号をエラーチェック用ブックに一覧で表示し、探しやすくしたいのです。
私はVBAの勉強を始めて4日目なので、マクロでどこまでできるのか全てわかるわけではないので、もしマクロで作れない無理なことを書いていたら申し訳ありません。
ネットでたくさん調べながら作ろうと頑張っているのですが、難しくてうまくいきません。
どうか知恵を貸していただけませんでしょうか。
No.1ベストアンサー
- 回答日時:
空白のチェックに関しては、意外と簡単にできます。
マクロの自動記録にして、
1、コントロールキー押しながら「G」
2、セル選択
3、空白セル
4、終了
これで、空白セルを見つけ出すコードが完成。自動記録だとselectionになってるんで、そこをセル範囲に変更すると。
理解できました?
ご回答ありがとうございます!
空白セルを見つけ出すコードをこのような方法で作れるなんてすごいです。良い方法を学べました、ありがとうございます。
Range("P22:V22").SpecialCells(xlCellTypeBlanks).Select
↑このようにしてselectionをセル範囲に設定してみるとうまくいきました。
Range("P22:V22").←このセル範囲の部分を、P22:V22のデータが記入してある一番下のセルまで判断して範囲を広げる方法もご存じないでしょうか?
もしご存じでしたら教えていただきたいです。
No.2
- 回答日時:
わざわざ良いサイトを紹介してくださってありがとうございます!
なんとなくわかってきました。
今のところは↓のようにコードを書いています。
Range("P22:V22").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.SpecialCells(xlCellTypeBlanks).Select
調べたい範囲も選択できているようですし、これでいいのかも?という感じです。
これで空白セルを探す部分は大丈夫なはずです!
とても助かりました!ありがとうございます(T_T)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/04 17:58
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/16 14:36
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Excel(エクセル) 【マクロ】同じフォルダ内にある複数ブックから1つのブック内の1シートにデータを集めたい 6 2022/09/28 18:16
- Visual Basic(VBA) Excelのマクロ ブック間である範囲をコピー Workbooks(“a.xlsx“).Sheets 3 2022/05/12 17:02
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/08/04 13:56
このQ&Aを見た人はこんなQ&Aも見ています
-
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
VBA:セルの空白を検索
Excel(エクセル)
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
連続データが入った行の一番右端の右側の空白セル
Excel(エクセル)
-
6
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
7
Excel VBA 空白セルがあったらメッセージボックスで知らせたい
Visual Basic(VBA)
-
8
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
9
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
10
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
11
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
12
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
13
エクセルファイルを開く時、常に同じシートから開くようにするには?
Windows Vista・XP
-
14
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
15
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
16
複数の条件に合う行番号を取得するには
その他(Microsoft Office)
-
17
メッセージボックスで1025文字以上を扱う
Visual Basic(VBA)
-
18
VBA データ(特定値)のある最終行を取得したい
Excel(エクセル)
-
19
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
20
VBA Cのセルが空白でなかったら、Aのセルに順番に数値を入力
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定の色のついたセルを削除
-
VBAマクロ実行時エラーの修正に...
-
複数指定セルの可視セルのみを...
-
C# DataGridViewで複数選択した...
-
エクセルVBA 配列からセルに「...
-
Excel UserForm の表示位置
-
Excelで空白セル直前のセルデー...
-
【VBA】【ユーザーフォーム_Lis...
-
VBA:日付を配列に入れ別セルに...
-
VBAでユーザーフォームにセル値...
-
CellEnterイベント仕様について
-
円弧の描画方法
-
DataGridViewでグリッド内に線...
-
Excel 範囲指定スクショについ...
-
VB2005 DataGridView で選択...
-
DataGridViewのフォーカス遷移...
-
【Excel VBA】マクロで書き込ん...
-
エクセル、マクロで番号を読込...
-
Excel VBA でFunctionプロシジ...
-
[Excel VBA] このコードでは行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
特定の色のついたセルを削除
-
Excelで空白セル直前のセルデー...
-
Excel UserForm の表示位置
-
エクセルVBA 配列からセルに「...
-
VBA:日付を配列に入れ別セルに...
-
エクセル、マクロで番号を読込...
-
【Excel VBA】一番右端セルまで...
-
【VBA】写真の貼り付けコードが...
-
【ExcelVBA】値を変更しながら...
-
【VBA】【ユーザーフォーム_Lis...
-
DataGridViewのフォーカス遷移...
-
EXCEL VBA 文中の書式ごと複写...
-
データグリッドビューの結合セ...
-
複数指定セルの可視セルのみを...
-
QRコード作成マクロについて
-
C# DataGridViewで複数選択した...
-
Excel 範囲指定スクショについ...
-
エクセル VBA ボタンをクリック...
-
DataGridViewでグリッド内に線...
おすすめ情報
特定の範囲の中から空白セルを探し出す方法はわかりました。
残りは
①セルに入力されている名前のExcelファイルを開く(フォルダは毎回変わるので、フォルダの場所を自動で探してくれる)
②選択している複数のセルの行番号を、他のブックの指定セルへ入力する
これらをマクロで実行する方法を探しています。
知っている方がいましたら教えていただけたら大変ありがたいです!
1度にたくさん質問を書きすぎたので、質問をいくつかに分けようと思います。
なので、この質問は締め切らせていただきます。回答してくださった方、ありがとうございました。