Sub データ検索()
Dim myNo As Variant
Dim mykekka As Range
myNo = InputBox("機番Noを入力してください。", "機番No入力")
Cells.Find(What:=myNo, LookAt:=xlPart).Select
End Sub
上記のような検索のプロシージャを記述しました。
セルB(機番)を検索して該当の単一セルが選択されるまでは、記述出来たのですが、選択された単一セルの行(A~W)を取得して、下の空白の行にコピーしたいのですが、選択された単一セルの行(A~W)の取得の仕方が分かりません。
VBAを始めたばかりなので、質問の内容が分かりにくいかもしれませんがアドバイスよろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
>下の空白の行にコピーしたいのですが、
これは、検索された機番Noの行の下という意味ですか? それとも検索された機番Noの行から下にある空白の行という意味ですか?
その辺が明確でないので、とりあえず最後の行にコピーするようにしました。また全てのセルを検索範囲にすると無駄ですし誤動作の原因となりますから検索するは列は限定する方がよいと思います。さらに言えば実務で使うつもりならエラー処理は入れた方がよいですよ。質問のマクロだと検索して見つからなかったときエラーになります。
ですからあくまで参考程度にしてください。
Sub データ検索()
Dim myNo As Variant
Dim mykekka As Range
Dim trg As Range
Const KibanCol As Integer = 1 '列番号 1:A列、2:B列
myNo = Application.InputBox("機番Noを入力してください。", "機番No入力") 'メソッドのInputBoxを使いましょう
If TypeName(myNo) = "Boolean" Then 'Cancelのとき
MsgBox "Cancelが選択されました"
Else
Set trg = ActiveSheet.Columns(KibanCol).Find(What:=myNo, _
LookIn:=xlValues, LookAt:=xlPart) '機番Noの列を検索
If Not trg Is Nothing Then '検索した値が見つかったとき
ActiveSheet.Range(Cells(trg.Row, "A"), Cells(trg.Row, "W")).Copy _
Destination:=ActiveSheet.Cells(65536, KibanCol).End(xlUp).Offset(1, 0)
Else
Msgbox "機番Noが見つかりませんでした"
End If
End If
End Sub
この回答への補足
質問へのアドバイス、有難う御座いました。
年末年始と、アドバイス頂いた内容をマニアル本を見ながら理解しようとしていたので、返事が遅くなり大変申し訳ありませんでした。
追加で質問したいのですが、新たに作成したシート(予定表)に検索した値をコピーしたいのですが、どのように記述すればいいでしょうか。
お礼が遅くなったうえに質問するのは申し訳ないのですが、アドバイスをお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) エクセルVBAのコードで質問です。 下のコードはJ16の文字列をB3を起点とする範囲から探して、見つ 5 2023/04/07 11:07
- Excel(エクセル) エクセルのマクロが上手く動きません 4 2022/07/14 13:25
- Visual Basic(VBA) ワークブック内すべて検索 2 2022/12/20 20:13
- Excel(エクセル) 指定文字列が該当するA列をアクティブセルにするには 3 2022/08/17 13:18
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) Excel VBA キーワードから列を取得して、さらに空欄行を非表示にする 3 2022/10/21 22:49
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Excel(エクセル) VBA オリジナル関数で選択セルの合計を作成したい 3 2023/03/19 19:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Excel関数】UNIQUE関数で"0"...
-
Excel ウインドウ枠の固定をす...
-
エクセル マクロ オートフィ...
-
[EXCEL]ボタン押す→時刻が表に...
-
エクセル マクロで数値が変っ...
-
エクセルVBA 最終行を選んで並...
-
電話番号の入力方式が違うデー...
-
エクセルで特定の文字列が入っ...
-
エクセルVBAのEntireRow.Hidden...
-
エクセルのマクロで意図しない...
-
excel 同じ番号のデーターを横...
-
エクセルマクロで偶数行(又は...
-
EXCELで最後の行を固定
-
EXCELマクロを使い、空白行では...
-
Excel2007で、指定範囲の行高さ...
-
結合されたセルをプルダウンの...
-
アクティブになっている行をマ...
-
エクセル2016で時間を入力して...
-
EXCEL 「最後のセル」のリセット
-
連続データが入った行の一番右...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の文字列が入っ...
-
エクセル マクロ オートフィ...
-
【Excel関数】UNIQUE関数で"0"...
-
結合されたセルをプルダウンの...
-
[EXCEL]ボタン押す→時刻が表に...
-
excel 小さすぎて見えないセル...
-
AのセルとB行を比較して、一致...
-
エクセル マクロで数値が変っ...
-
エクセル 上下で列幅を変えるには
-
excelのデータで色つき行の抽出...
-
Excel グラフのプロットからデ...
-
エクセル2016で時間を入力して...
-
VBAで色の付いているセルの行削除
-
特定の文字がある行以外を削除...
-
連続データが入った行の一番右...
-
エクセルVBA 最終行を選んで並...
-
エクセルのセルに指定画像(.jpg...
-
エクセルで昨日までの日付デー...
-
エクセルマクロで偶数行(又は...
-
A1に入力された文字列と同じ文...
おすすめ情報