• ベストアンサー
  • 困ってます

VBAでエクセルからエクセルのファイルを開くには?

D:\に db1.mdb Book1.xls があります。 db1.mdbのフォームのコマンドボタンをクリックして Book1.xlsを開きたいのですが VBAコードをご教授いただけますか? (マクロではなくVBAコードが知りたいです) エクセルからエクセルのファイルを開くなら Workbooks.Open ファイルのフルパス で出来ました。 ご回答よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数212
  • ありがとう数3

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

  • ベストアンサー
  • 回答No.1

開くだけならば、 Dim App As Object Set App = CreateObject("Excel.Application") App.Visible = True App.Workbooks.Open Filename:="フルパス" App.Visible = True エラー処理は何もしていませんが。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

うまくいきました。ありがとうございました。

関連するQ&A

  • VBA ファイルの開き方

    マクロでファイルを開くときに Workbooks.open FileName:="\c:=\My Documents\Book1.xls" のように記述しますが、この「Book1」にあたる部分を その日の日付(20090422)のようにするにはどうすれば良いのでしょうか? つまり、ファイル名のところに日付を入れたいのです。 よろしくお願いします。

  • Excel2010 VBA

    Excel2010でVBAのフォームを使って「コマンドボタン」をクリックしたときにフォーム入力した内容をデータ(リスト)に転記(反映)させたいのですが どのようにしたらいいでしょうか? コマンドボタンの作り方は分りましたがそのマクロを実行する内容(コード)の作り方がいまいちわかません ちなみにデータ(リスト)は上から順番に空白の列を埋められていけばいいです よろしくお願いします

  • エクセル2000VBAでファイルを操作したい

    いつもお世話になっています。 エクセルVBAで別のワークブックを参照したいので workbooks.open Filename:="C:my documents\***.xls" とすると、そのオープンするワークブックのTisWorkbookのWorkbook_Open()で実行している(.show)メニュー(ユーザーフォーム)が開いてしまいます。 このとき、Workbook_Open()を実行させないでワークブックを開く方法って、 なにかありますか? Shiftを押しながらファイルを開くとき、実行されませんよね?それをVBAでできるのですか? よろしくお願いします。

その他の回答 (2)

  • 回答No.3
  • ki-aaa
  • ベストアンサー率49% (105/213)

こんにちわ アクセスでは、マクロとVBAはまったく違うものみたいですが (実はよく分かっていない・・・) エクセルでは、マクロとVBAは同じ物です。 つまり、VBAのコードをマクロと呼んだり、VBAと呼んだりします。 だから、あなたの質問の答はありません。 ていうか、すでに答は自分て出しています。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

質問はアクセスの事です。 アクセスのマクロとVBAは別物だけど エクセルのマクロとVBAは似たようなものと言うのは 理解しています。

  • 回答No.2

No1です。 App.Visible = True が二重になっていました。最初のものをコメントアウト してください。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご丁寧にありがとうございます。コメントアウトします。

関連するQ&A

  • ExcelVBA UserFormに沢山のボタンを貼り付けたい

    Excel2003のVBAを使っています。 コマンドボタンが沢山付いたユーザーフォームを起動したいのですが、 フォームに貼り付けるコマンドボタンの個数は、マクロを実行した時に決めたいです。 (例えば任意のセルの値を読み込むなどして) 要するにコードの中で、コマンドボタンの生成をしたいのですが、 可能でしょうか。 VBでプログラム組んでる知人に聞いたところ、「コントロール配列」なるものを利用すれば可能だそうですけど、 VBAにはそれが無いと聞きました。

  • エクセルVBA

    こんばんは! エクセルマクロ初心者です。 エクセルVBAについて教えてください! パス(?)を指定して、ファイルを開けてから実行する マクロを書きたいのですが、エラーになってしまいます。 Dim Filename as string (1)Workbooks.Open Filename:= "\D\MyDocument\●●.xls" (●●はファイル名) (2)Workbooks("●●").Activate (1)の部分は実行されて目的のファイルは開くのですが(2)でエラーになってしまいます。 どなたか教えてください! 以前までは、このマクロ実行できていたのですが、突然できなくなりました。 困ってます。

  • アクセスVBAでエクセルを操作するのは不可能でしょうか?

    アクセスVBAでエクセルを操作するのは不可能でしょうか? テスト.xlsのシート1の1行目コピーして テーブルに追加するということがしたいのですがどういうコードを書けばいいのか分かりません。 テスト.xlsは開いている状態です。 アクセス側のユーザーフォーム上のコマンドボタンをクリックしたらこの動作を実行するコード。。。 というのは不可能でしょうか?よろしくお願い致します。

  • VBAでWordからExcelを開きたい。

    Wordからエクセルファイルを開くコードを書いているのですが・・・。 一応エクセルファイルは開いているようですが、なぜか非表示になって しまいます。 そのあと何か別のエクセルファイルを開こうとすると、一緒に表示されます。 なぜなんでしょう? 書いたコードは以下になります。 (Dドライブの「テスト」フォルダ内の「テスト.xls」を開く場合) Sub エクセルを開く() Dim app As New Excel.Application Dim book As Excel.Workbook Set book = app.Workbooks.Open("D:\テスト\テスト.xls") End Sub 単純にエクセルが開いて目の前に表示されてほしいだけなのですが・・・。 Wordがそのまま表示されています。 また、Wordは画面全体に表示させてないので、後ろに表示されていれば 分かるのですが、後ろにも表示されていません。 でも、何か別のエクセルファイルを普通にクリックして開こうとすると、一緒 に該当の「テスト」も表示されるという訳です。 どうしてでしょうか? どのようにコードを書けばいいのでしょうか? よろしくお願い致します。

  • エクセル2010VBA

    エクセル2003VBAを使用して、エクセルブックのOPEN処理を作成していました。 先日、会社パソコンのOFFICEを2003→2010に更新し、動作させてみると、 「ファイルが見つかりません」 と、エラーウィンドウが表示されてしまいました。 ※2003では問題なく動作していました。 ソースは下記のようになっています。 ※エラー部抜粋です。 ------------------------------------------------------------ Private Function GetExcelData(ByVal sFile As String) As Integer On Error GoTo Err Dim xlApp As New Application Dim xlBook As String xlBook = sFile ' 日報ファイル名 xlApp.Workbooks.Open Me.txtNippoPath.Text & sFile '日報Bookを開く ------------------------------------------------------------ sFile:ファイル名が入っています。 Me.txtNippoPath.Text:パス名が入っています。 別途、エクセルで、Workbooks.Open "パス+ファイル名" をコマンドボタンで動作させると、普通に開くのですが・・・。 解決方法が分かる方が入れば、よろしくお願いします。

  • Excel VBA でファイルが開かれているか確認する

    ExcelのVBAで、book1.xlsというファイルが現在開かれているか確認するにはどんなプロパティを使えばいいでしょうか? 実際にやりたい事は、book1.xlsに対して処理するマクロがあるのですが、そのbook1.xlsが開かれていなければ処理が出来ないのでマクロが入っているファイルを閉じる。というものです。

  • ExcelVBA変数等でのファイルのOpen方法

    ExcelVBAで、変数でのファイルのOpen方法を教えてください。 以下のフォルダ構造とします。 '////////////////////////////////////////////////////// マクロファイル.xls 1フォルダA  ∟1999ファイルA.xls  ∟2000ファイルA.xls  ∟2001ファイルA.xls  ∟2002ファイルA.xls  ∟2003ファイルA.xls  ∟2004ファイルA.xls ・・・ 2フォルダB  ∟1999ファイルB.xls  ∟2000ファイルB.xls  ∟2001ファイルB.xls  ∟2002ファイルB.xls  ∟2003ファイルB.xls  ∟2004ファイルB.xls ・・・ 3フォルダC  ∟結果ファイルC.xls '////////////////////////////////////////////////////// マクロファイル.xlsのシートにコンボボックスとボタンを配置します。 コンボボックスで【2001】を選択した場合は、 前後1年…合わせて合計3年分のファイルの「A5~A25」の値が、 「結果ファイルC.xls」にコピーされるようにしたいのです。 コピー内容や範囲が多く1つのプロシージャーに収まり切りませんでした。 そこで「結果ファイルC.xls」ファイルを1つめのプロシージャで開き、 2つめのプロシージャで残りの処理を実行しようとしたのですが、 変数、コンボボックスの値でのファイルを開く方法がわからず困っており、 どなたかお知恵をお貸し下さい。 以下のようなコードを書いてみましたがエラーとなりました。 '////////////////////////////////////////////////////// Dim vTgYear As Variant Dim myFLName1 As String, sWbkSubName1 As String Dim myFLName2 As String, sWbkSubName2 As String, SubName As String, vTgYear = ComboBox1.Value For i = -1 To 1 sWbkSubName1 = "3_フォルダC\結果ファイルC.xls" myFLName1 = ThisWorkbook.Path & sWbkSubName1 Workbooks.Open Filename:=myFLName1 SubName = "vTgYear + i & _ファイルA.xls" sWbkSubName2 = "1_フォルダA & SubName" myFLName2 = ThisWorkbook.Path & sWbkSubName1 Workbooks.Open Filename:=myFLName2 (実行コード中略) Next i '////////////////////////////////////////////////////// 今回はファイルの開き方だけなので、実行コードを省略させていただきました。 初歩的な質問かと思いますが、何卒お力をお貸しいただけますと幸いです。 よろしくお願い致します。

  • VBA 「Bookがアクティブでない時にはぬける」コード

    エクセル2000 VBAについてご教授お願いします。 私が希望するコードは下記のとおりです。 「Book1がアクティブでない時にはぬける」 私が断片的にわかるのは以下のようなコードです。 「If Then」、「Exit Sub」、「Workbooks("Book1.xls") 」、「Active」 以上、よろしくお願いします。

  • Excel2011のVBAについて教えてください。

    初めて質問します。 Excel2011forMACでVBAを使いBOOKを指定してクローズさせたいのですが、 エラー1004が起こりファイルを閉じることができません。 作成したVBAは以前にWindowsXP、Excel2000で作成したものを修正したものだったためなのではないかと思い、 改めてExcel2011forMACで下記ように、コマンドボタンをクリックすると"test.xlsx"を閉じるだけのテストを行いましたが同じエラーが発生します。 Private Sub CommandButton1_Click() Windows("test.xlsx").Close  End Sub 実行すると『実行時エラー'1004' _ オブジェクト'Close'のメソッド'Window'が失敗しました。』となります。 ちなみに、WindowsをWorkbooksにしても同様のエラーが発生しました。 Workbooksではファイルを指定しなければエラーは発生しないのですが、できれば1つのファイルを開いた状態にしておきたいと思っています。 このエラーの解消方法を教えていただけませんか。 それとも、MACでは個別にファイルを閉じることはできないのでしょうか。 Excel2011を使っているMAC OS Xのバージョンは10.6.7です。 VBAについては、初心者レベルで常にヘルプとマクロの記録を頼りになんとか作成しています。さらに、MACでVBAを使ったのが初めてで、この事象が一般的に知られていることなのかわかりません。いろいろ調べて同じような事例が見つけられなかったので質問させていただきます。 よろしくお願いします。

  • VBAでフォルダにあるエクセルファイルを開く

    こんにちは このコードがうまく動かないのですが、 どこがいけないのかわからなく助けてください。 なおフォルダの中には******データ.xlsと言うファイルがあり、アスタリスク部分は日付が不規則に変化して上書きされるのです。 このファイルを開くマクロを作りたいのですが。 うまく行きません。 よろしくおねがいします。 Sub excelopen() ' ' Dim エクセル As String 'エクセル = Dir(ActiveWorkbook.Path & "\*データ.XLS") If エクセル = "" Then Exit Sub エクセル = ActiveWorkbook.Path & "\" & エクセル Workbooks.Open Filename:=エクセル End Sub