• ベストアンサー

EXCEL VBA----カーソルがある行全体を選択する方法

こんにちは。下記で困っています。 例えば10行目のどこか(B10、E10:G10など)が選択されていれば 10行目全体を選択する場合 i=Selection Address Rows(i).select としているのですが カーソルのある行が複数(B10:B12、E10:E15など)の場合には どのようにすれば良いでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

No1です。 失礼しました。勘違いで、行を非表示にしてしまいました。(何をやっているのか、すみません) 選択するだけなら Sub test() Selection.EntireRow.Select End Sub です。

fk_sap
質問者

お礼

merlionXXさん!こんなに簡単に出来てしまうなんて・・・感激です!! 助けて頂いてホントにありがとうございました!!

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

Sub test() Selection.EntireRow.Hidden = True End Sub

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excel VBA セルの選択方法

    こんばんは。 セルの選択方法をお聞きしたいのですが、 SheetAのB2のセルの値を SheetBのリストの最下行(例えば12)からn行目(例えばn=3だったら12行目から15行目)を選択し、SheetAのB2のセルの値を貼り付ける方法を教えてください。 方法は複数あると思うのですが、考えにいきずまってしまいました。 Range("B2").Copy For i = 1 To n Worksheets("Sheet2").Range("b65536").End(xlUp).Offset(1).Select ActiveCell.Parse Selection..Resize(.Rows.Count + [n]).Select それと   Dim cntRow As Integer Dim cntCol As Integer cntRow = Selection.Rows.Count + 1 cntCol = Selection.Columns.Count + 1 Selection.Resize(cntRow, cntCol).Select 上のようなResizeを使って、表(例えばC3~E10)を貼り付けた隣のセル、(例えばB3~B10)のセル番地を取得して、 SheetAのB2のセルの値を貼り付ける方法も教えていただけないでしょうか。 基本的なことをお聞きするようですが、宜しくお願い致します。

  • EXCEL2003 VBA 行選択について 

    初心者です。 10行目から、20行目まで選択するには、    Rows("10:20").Select ですが、 10行目から、i行目を選択するのに   Rows("10:i").Select とすると(iは、セルに入力した任意の値(≧11)で定義します)、エラーが出ます。 任意の複数行を選択する方法をご教授下さい。 なお、この選択した複数行に対し、行削除や行挿入をするつもりです。

  • 【Excelマクロ】 行全体を選択したい

    下記マクロはデータが入っている最終行の次のセル(A列)を選択するマクロです。 但し、A列はデータが入っていないこともあるため、必ずデータが入っているB列をキーにしています。 NT = Cells(Rows.Count, "B").End(xlUp).Row + 1 Range("A" & NT).Select B125までデータが入っていた場合A126にカーソルが置かれますが、本当は126行全体を選択したいのです。 「Range("A" & NT).Select」部分をどのようなマクロに変更したらよろしいでしょうか?

  • エクセル VBAで複数行の選択

    エクセル2002使用です。 VBAで変数を使って複数行の選択で、6行目から9行目までを選択したいのです。 sub macro2() Dim rw As Integer rw=8 Rows("rw - 2:rw + 1").Select end sub だとエラーになります。 Rows("6:9").Select のようにしたいのですがどこが悪いのでしょうか? よろしくお願いします。

  • Excel VBA: 複数行を選択したらエラーにしたい?

    お世話になります。 複数行にわたって選択しているときに実行するとエラーメッセージを出したいとします。現状では、 If Selection.Rows.Count <> 1 Then subMsgBox "You are selecting two or more rows" Exit Sub End If としていますが、これではドラッグで連続した行を選択している場合には正しくエラーになりますが、Ctrlクリックでポンポンと飛ばし飛ばしクリックしている場合はエラーになりません。 If Selection.Cells.Count <> 1 Then だと同じ行の複数個所を選んだ場合もエラーになってしまいます。 If Selection.Cells.EntireRow.Count <> 1 Then If Selection.Cells.EntireRow.Rows.Count <> 1 Then でもCtrl+クリックの場合にダメです。 どうしたらいいでしょうか。 よろしくお願いします。

  • エクセル VBA の行選択

    エクセルVBAで行を選択する場合 Rows(1,1).select Range(Cells(2,2),Cells(5, 5)).EntireRow.Select の方法があると知りました。 この数値の部分に変数を入れるとエラーがでてしまいました。 どうすれば変数で行を選択することができるのか教えてください。 2003を使用しております。

  • VBAで行を挿入する

    VBAを始めた初心者です。 Exel2002使用です。 VBAでA列の4行目から10行目に行の挿入をできるようにしようと下記のように書きましたが、Rows("i:i").Selectの部分でデバックがかかってしまいます。間違っている理由がわからないのですがよろしくお願いします。 また、DO While Loopステートメントを使ってA列が空白になるまで(例えばA4セル以下の)行を挿入とする場合の方法も教えていただけましたら幸いです。 Sub 4行目から10行目まで() Dim i As Integer For i = 4 To 10 Cells(i, 1).Value = i Rows("i:i").Select Selection.Insert Shift:=xlDown Next i End Sub Sub 4行目から空白になるまで() Dim i As Integer Range("A4").serect Do While activecell.value = "" Cells(i, 1).Value = i Rows("i:i").Select Selection.Insert Shift:=xlDown activecell.offset(1,0).select Loop End Sub

  • エクセル vbaのなぜこうなるのか?

    こんばんは。 単純な事かもしれませんが、ちょっと疑問に思ったので質問させていただきました(Excel2000使用)。 ・一つ目 2行目を選択する場合 ⇒ rows(2).select 2行目から5行目までを選択する場合 ⇒ rows("2:5").select ☆☆質問☆☆ 一つの行を選択する場合は引数を("")で囲わないのに、複数行では引数を""で囲わないといけないのか? ・2つ目 2行目から5行目までを選択する場合 ⇒ rows("2:5").select 2列目から5列目を選択する場合 ⇒ range(columns(2),columns(5)).select ☆☆質問☆☆ なぜ複数列を選択する場合、columns("2:5").selectでは実行時エラーとなるのか? 素人にも理解できるような回答をお願いいたします。

  • エクセルのマクロで行選択の選択範囲を変数指定する方法

    あるファイルのデータを別のファイルに行挿入でコピーするマクロを作ろうとしています。 コピー元の選択について、行範囲が固定であれば例えば   Rows("10:20").Select でよいのですが、コピー元行範囲がファイルにより異なるので変数化する必要があります。 単純には、 Sub Row_Copy() Dim AA, BB As Integer AA = 10 BB = 20 ' 10行目から20行目を行選択しコピーする Rows("AA:BB").Select '##ここが問題## Selection.Copy ' ' (簡単のため)同じシートに行挿入する例 Rows("30:30").Select Selection.Insert Shift:=xlDown End Sub ですが、これだと Rows("AA:BB").Select の部分でエラーになります。 いろいろとやってみましたが、どうしても何らかのエラーになってしまいます。Rowsは変数では使用できないのでしょうか? ちなみに、行範囲の選択ではなくRangeでセル範囲の選択をするという方法もありますが、複数ファイルのデータをコピー先の一つのファイルにマージするために行挿入でコピーしたいことと、列方向の柔軟性を持たせたいため、コピー元選択方法として行範囲の指定をしたいという趣旨があります。 また、1行毎のコピー・行挿入をデータの行数だけ繰り返すという手もありますが、データ量が多いとかなり処理時間がかかるためこれも避けたいと思っています。 マクロ初心者で知識不十分ですが、よろしくお願いします。

  • エクセルマクロの行選択

    複数行選択するマクロで Rows("1:10").Select の括弧の中に変数を入れたいのですがうまくいきません。"や&を使ってみたのですがいまいちわかりません。 よろしくお願いします。

このQ&Aのポイント
  • 独立行政法人日本学生支援機構から借りた奨学金の返済内訳表には、1・7月の引き落とし金額が通常の金額よりも高くなっていることがあります。
  • これは、1・7月の引き落とし額がボーナス払いに設定されているためであり、実際の返済内訳表とは異なる金額が引き落とされます。
  • 支払い方法や変更をしていない場合でも、返済内訳表に表示されている金額と実際の引き落とし金額には差異が生じることがあるので、注意が必要です。
回答を見る

専門家に質問してみよう