• ベストアンサー

「Excel 97」の書籍のサンプルコードが実行できません

「Excel 97」の書籍のサンプルコードですが、エラー('9')になってしまいます。 どうしたら実行できますか? Excel 2002です 以上 よろしくお願い致します。 ----------- Sub 二番目のウインドウをアクティヴ() ActiveWorkbook.Windows(2).Activate End Sub

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんばんは。 特に、「Excel 97」のコードでエラーが発生するということではないと思いますね。 >エラー('9')になってしまいます。 「実行時エラー」 # 9 インデックスが有効範囲にありません。 ということだと思います。   Excelの メニューのウィンドウ-新しいウィンドウを開く で、シートを二重化していないと、 ActiveWorkbook のWindows(2) をアクティベートできないわけです。 Sub 二番目のウインドウをアクティヴ()  ActiveWindow.NewWindow  ActiveWorkbook.Windows(2).Activate End Sub とすれば、エラーは発生しないのではないでしょうか?

oshietecho-dai
質問者

お礼

こんばんわ ご回答、誠に有難うございます。 >Excelの メニューのウィンドウ-新しいウィンドウを開く 知りませんでした。

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

関連するQ&A

  • VBAで実行時エラー 1004 がでる

    Excel2013です。以下のコードでエラーがでます。 どのシートがアクティブでもデータを閉じる時に特定のシート(sheet1)のA行の最終行の一つ下をアクティブにし上書き保存して閉じるようにしたいです。 以下記述したコードです。 Sub Auto_Close() Worksheets(1).Activate Range("A60000").End(xlUp).Offset(1).Select 'Aセル60000から最終行のセルの一つ下に下がる ActiveWorkbook.Save End Sub 閉じるときは問題ないのですが、開いたときにエラーがでます。 以下エラー文です。 実行時エラー 1004 'Worksheets'メソッドは失敗しました'_Global'オブジェクト どこを直せばいいのでしょうか? アドバイス願います。

  • Excel2007VBA ブックのアクティブ化

    ●質問の主旨(2点) 1.以下のコードは、なぜエラーが返されるのでしょうか? 2.タスクバーにあるアクティブ状態ではないブックの1枚目シートを 選択するためには、以下のコードをどのように書き換えれば良いでしょうか? ●質問の補足 タスクバーにはエクセルブック「Book1」と「Book2」を表示させ、 「Book1」の「sheet1」がアクティブになっています。 Book1の標準モジュールに以下のコードを記述しています。 Sub sample1() Workbooks("Book2.xlsx").Activate Worksheets("sheet1").Select End Sub しかし実行すると「実行時エラー9インデックスが有効範囲にありません」と エラーが返されます。なぜそうなるのかが分かりません。 ご存知の方がいらっしゃればご教示よろしくお願い申し上げます。 私はVBA初心者です。

  • ExcelVBAのコードで上書き保存

    お世話になります。 ExcelVBAのコードで上書き保存時 「実行時エラー1004 ファイルを保存できません」 となり止ってしまいます。 (自分のPCではエラーも発生せず保存できるのですが 友人のPCでは上記のエラーが発生する状況です) コードはExcel起動時にExcel自体を非表示にし フォームで入力等の処理を行い、上書き保存→Excel終了としています。 Private Sub Workbook_Open() Application.Visible = False 'Excel非表示 userform1.Show End Sub Private Sub CommandButton2_Click() 'userform1 ActiveWorkbook.Save '上書き保存 Application.Quit 'Excel終了 End Sub 何とか解決する方法はないでしょうか? よろしくお願いします。

  • Excel→Accessのプロシージャを実行させるには?

    http://oshiete1.goo.ne.jp/qa4071588.htmlを参考に Excel→Accessのプロシージャを実行させることはできるのですが、 Access→Excelができません。 回答者:KenKen_SPさまの方法を 逆にしてVBEコードに記載してみたのですが エラーになってしまいます。 ●アクセス側に● Sub Excelのプロシージャを呼び出す() Dim ExApp As Object Set ExApp = GetObject("D:\up\エクセルファイル名.xls") If Not ExApp Is Nothing Then ExApp.Run "TestProcedure" End If Set ExApp = Nothing End Sub ●エクセル側に● Sub TestProcedure() MsgBox "Call されました" End Sub で、実行すると、 「ExApp.Run "TestProcedure"」 の部分で 「オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438)」 というエラーになります。 Excel→Accessなら問題はないのに、 Access→Excelだとエラーになるのはなぜでしょう? (2003です。)

  • EXCEL2010でふりがなマクロを実行したら

    EXCEL 2003で作成したファイルをEXCEL 2010で開いて、以下のマクロを実行しました。 Private Sub CommandButton1_Click() Selection.SetPhonetic Selection.Phonetics.Visible = True End Sub 約4500行ある名前(テキストからのコピペ)全ての行にふりがなを振るためです。 ところが、EXCEL 2003ではほんの数秒で完了するのですがEXCEL 2010で実行した時 10分以上掛かりました。 何か解決策はあるのでしょうか。 因みにEXCEL 2003はWindowsXP、EXCEL 2010はWindows7、それぞれのマシンで 今後も同じマクロを実行する状況にあります。

  • エクセルのVBA関数の実行する方法は

    お世話になります イメージを描きやすいように、例を挙げます Function sample()   MsgBox("こんにちわ") End Function と こんな関数をエクセル上で Visual Basic Editorアイコンを押すと VBA画面が開きますから、コードを書くところに 上の3行の関数、sample()、を記入します 左のイミディエイトウィンドウ(環境によるかも知れません) に sample(Enterキー) と入力すると Sub または Function が定義されていません と、エラーが出ます ACCESSのVBAであれば、これで実行できる、とおもいますが エクセルの場合はどうするのでしょうか

  • 旧VBAがExcel2013で突然実行エラー

    Excel2003で作ったVBAマクロを互換モードで保存し、ずっとExcel2013で実行できていましたが、2014.12.13に実行しようとしましたら、 Sheets("当番表サンプル").Select で実行エラー(インデックスエラー)になってしまいました。 Excel2010で実行したら、通りました。 どういう理由でしょうか?

  • Excel VBAでCSV出力をすると実行時エラー

    Excelで品番ごとの数量データなどを他のシステムに取り込むためにCSV形式で出力するプログラムをVBAで作りました。 CSV出力を実行すると 「実行時エラー1004: 'ファイル名.csv'は読み取り専用です。アクセスできません。」 のエラーが出てしまいます。 このプログラムを作成したのは去年であり、Windows XPとExcel2003の環境では一度も出なかったエラーなのですが、PCの更新で新しい端末がWindows7とExcel2010となってから出るようになりました。 コードは以下の通りです ================================================================== 11桁の品番の間のハイフンや後ろに記号などを削除してTempシートのA列にデータを貼り付け(コード省略) bolTemp = Application.DisplayAlerts Application.DisplayAlerts = False Sheets("temp").Copy 'CSV出力 ActiveWorkbook.SaveAs Filename:="C:\Hinban Data.csv", FileFormat:=xlCSV, Local:=True ActiveWorkbook.Saved = True ActiveWorkbook.Close Application.DisplayAlerts = bolTemp MsgBox ("CSVデータの出力が完了しました(C:\Hinban Data.csv)") End Sub ================================================================== エラーが起きるエクセルファイルを以前の端末(廃棄前)にコピーして実行したらCSV出力ができました。 Windows7とExcel2010の環境下では何かコードの追記が必要なのでしょうか。 ネット検索などで調べましたがそれらしいヒントが見つかりません。 対処法などご存じでしたら、教えていただけるととても助かります。 よろしくお願いいたします。

  • Excelでのエラー

    こんにちわ。 今、以下のようなコードを実行した際に、エラーがでてしまい困っています。 ************************************************** Private Sub CommandButton3_Click() '再計算を自動に設定 With Application .Calculation = xlCalculationAutomatic .MaxChange = 0.001 End With ActiveWorkbook.PrecisionAsDisplayed = False UserForm4.Hide UserForm3.Show End Sub ************************************************* (この処理の前には、手動計算に設定しています。) このコードでExcel2000では、問題なく処理がされるのですが、 Excel97では、 「Calculationメソッドは失敗しました。"_Application"オブジェクト」 というようなエラーが出ます。 コード的にはExcel2000で問題なく動いているので、 大丈夫だと思うのですが、Excel97でオブジェクトの指定の仕方や、自動計算のメソッドに上記コードだと問題があるのでしょうか? どなたかわかる方、回答をお願い致します。

  • このコードの間違い箇所が解りません!

    tes1 の .xls と同じフォルダに 「tes2.xls」 という名前で保存し、閉じる。 というコードなんですが、「tes2.xls」 がなくなってしまいますが、どこが間違ってますでしょうか? 以上 よろしくお願い致します。  --------- Sub tes1() ActiveWorkbook.Close SaveChanges:=True, _ Filename:=ActiveWorkbook.Path & "\tes2.xls" End Sub ---------

専門家に質問してみよう