- ベストアンサー
これも入れ子(ネスト)と言いますか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- エクセルのVBAのことで
コマンドボタンで「Macro1」というマクロを実行させるVBAは以下だと思いますが。 Private Sub CommandButton1_Click() Call Macro1 End Sub 上記に、Sheet1・Sheet2・Sheet3に対して実行するということを加えると、どんなふうになるでしょうか。
- ベストアンサー
- オフィス系ソフト
- 色コード 変換の法則を教えてください。
Sub Macro1() MsgBox RGB(255, 0, 0) End Sub Sub Macro2() MsgBox RGB(0, 0, 255) End Sub VBAでMacro1を行うと、255が返るのに Macro2だと16711680が返ってきます。 Macro1は赤でMacro2は青です。 どうしてMacro2は返り値が変わってしまうのでしょうか?
- ベストアンサー
- オフィス系ソフト
- 二つの違いを教えてください。
エクセル2003です。 ////////////////// Sub Macro1() Cells.UnMerge End Sub Sub Macro2() Cells.MergeCells = False End Sub ////////////////// どちらを実行しても、セルの結合を解除するのですが VBA的にどちらを使った方が良いのでしょうか? どちらを使っても同じなのでしょうか?
- ベストアンサー
- オフィス系ソフト
- On Error GoTo でエラーが発生する
Sub Macro1() On Error GoTo ErrorTrap1 '-エラーの発生するコード 1 ErrorTrap1: On Error GoTo 0 Do On Error GoTo ErrorTrap2 '-エラーの発生するコード 2 On Error GoTo 0 Loop ErrorTrap2: End Sub しかし、以下のようにSubで二つに分けるとエラーは出ません。 Sub Macro1() On Error GoTo ErrorTrap1 '-エラーの発生するコード 1 ErrorTrap1: On Error GoTo 0 Call Macro2 End Sub Sub Macro2() Do On Error GoTo ErrorTrap2 '-エラーの発生するコード 2 On Error GoTo 0 Loop ErrorTrap2: End Sub 「On Error GoTo 0」がうまく解除できていないのかと思い、いろいろ試してみました。 しかし、どういった理由かはわかりませんでした。 「On Error GoTo」は、Subでは、ひとつしか使えないのでしょうか。
- ベストアンサー
- オフィス系ソフト
- Selectステートメントの入れ子について
Ifステートメントで If 条件1 If 条件2 … とするのが見づらいと思い、Notをつけて並べてみました。 Sub () If Not 条件1 Then End Sub End If If Not 条件2 Then End Sub End If 処理 End Sub これをSelectステートメントで行いたいのですが、入れ子にしないで書く方法はあるのでしょうか? (Select Not(?)のような…) もしあれば、お教えください。
- ベストアンサー
- Visual Basic
- Calculate を止めたいのですが
誰かが作った自動更新のようなマクロ(ボタンを押すとスタート)があるのですが、 自動で更新するのはいいのですが止まらないので、 スマートな止め方があれば教えてください。 (できれば別に設定したのボタンを押すとストップのような感じがいいです) ↓がそのマクロです。 ------------------------- Sub Macro1() ,Macro1 Macro , Calculate End Sub Sub Macro2() ,Macro2 Macro , Application.OntimeValue("00:00:00"), "Macro1" Application.OntimeValue("00:030:00"), "Macro1" Application.OntimeValue("00:06:00"), "Macro1" Application.OntimeValue("00:09:00"), "Macro1" , ~中略~24時間分続きます Application.OntimeValue("24:00:00"), "Macro1" , End Sub ----------------------------- です。よろしくおねがいします。
- ベストアンサー
- オフィス系ソフト
- excelマクロ記述
EXCELのBOOKがあり、n枚のシートを含んでいます。 Macro1という名称のマクロで、 そのBook内のすべてのシートにMacro2というマクロを実行させる という場合、Macro1はどのように書けばいいのですか。 次次にシートを開くという操作をどう表すか? このMacro2では、例えばシートの文字の表示を75%のサイズで表示のようなものを考えています。 またそのときmacro2は、何か記述の追加が必要ならそれはどのようなものか。 よろしくお願いいたします。 Sub Macro1( ) ' Macro1 Macro ' 次次とシートを開き、75%サイズにする xxxxxxxx Sub Macro2( ) ' Macro1 Macro ActiveWindow.Zoom = 75 End Sub End Sub
- ベストアンサー
- オフィス系ソフト
- エクセルVBAで5行目からオートフィルタモードに設定したいたい
抽出項目が5行目にあり、オートフィルタを5行目から表示させたいのですが、うまくいきません。 Macro1では項目が消えてしまい、▼が1行目に、Macro2では項目は残りますが、▼は同じく1行目になってしまいます。どうしたら5行目にオートシェイプの▼が配置できるでしょうか? Sub Macro1() Range("A5").Select Selection.AutoFilter End Sub Sub Macro2() Range("A5").AutoFilter End Sub
- ベストアンサー
- オフィス系ソフト
- エクセルシートの順繰り表示マクロについて
エクセルにて随時更新されるデータを全画面表示し、3枚のシートを5秒置きに順繰り表示させるようマクロを組みました。始めは順調なのですが、数時間たつとフリーズしてしまいます。そもそもエンドレスのマクロプログラム実行に無理があるのでしょうか。 または下記のプログラムに問題があるのでしょうか。ご教授お願いします。 Sub Macro1() Sheets("Sheet2").Select Application.OnTime Now + TimeValue("00:00:05"), "Macro2" End Sub Sub Macro2() Sheets("Sheet3").Select Application.OnTime Now + TimeValue("00:00:05"), "Macro3" End Sub Sub Macro3() Sheets("Sheet1").Select Application.OnTime Now + TimeValue("00:00:05"), "Macro1" End Sub
- ベストアンサー
- その他MS Office製品
お礼
サブルーチンとネストは違うんですかね。 有難うございます。