- ベストアンサー
VBAで。
お世話になります。 VBAの記述の中で、 現在の行から 数行先までジャンプする様な記述方法ってありませんか。 具体的に教えて頂きたく、何卒宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
gotoのこと? Private Sub コマンド0_Click() For x = 1 To 10 Debug.Print x If x = 5 Then GoTo xxx Next x Exit Sub xxx: Debug.Print "end of sub" End Sub のように書くと、 1 2 3 4 5 end of sub のような結果が得られます。 ちなみに数十年前私が高校でBasicのプログラミングを習ったときは、「Gotoステートメントは使うな!」と言われました。 プログラムが読みにくくなることもありますので、エラーハンドリングなどで使わざるを得ない場合を除き、多用はしないほうが良いと思います。
その他の回答 (3)
- KenKen_SP
- ベストアンサー率62% (785/1258)
こんにちは。 > 現在の行から数行先までジャンプする様な記述方法 現在の行とは「アクティブセル」という意味であるなら、 Application.Goto Reference:=xxx, Scroll:=True とか。 第1引数 Reference は、Range オブジェクトまたは R1C1 形式のセル参照 文字列で指定します。具体的には、 Application.Goto Reference:=Range("Sheet2!A1"), Scroll:=True Application.Goto Reference:="Sheet2!R1C1", Scroll:=True となります。第2引数 Scroll には、移動先セル範囲の左上端がウィンドウ の左上端に表示されるようにウィンドウをスクロールさせる場合に True を指定します(省略可)。 なお、Select メソッドとの違いは、事前に移動先をアクティブにする必要 がない点です。詳しくはヘルプを参照して下さい。
お礼
私の説明不足で、意図した事と違う回答ではありましたが、 大変勉強になりました。
- n-jun
- ベストアンサー率33% (959/2873)
テキスト等の読み込み行を飛ばしたいとか?
- kztk
- ベストアンサー率53% (59/110)
何のVBAか分かりませんが、VBでしょうか。 ジャンプの意味もよくわかりませんが、例えばこういうことですか? Public Sub Jump() '5行下のセルをアクティブにする。 ActiveCell.Offset(5, 0).Activate End Sub
お礼
ご回答頂きありがとうございます。 GOTOの事でした。 解決する事ができました。