• ベストアンサー
  • 暇なときにでも

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

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

noname#150256

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

  • 回答数2
  • 閲覧数123
  • ありがとう数2

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

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

>テスト.xlsのシート1の1行目コピーしてテーブルに追加する これはAccessからExcelを操作するとはいいませんね 単にExcelのデータを取り込むだけの話ですよ やりようによってはコードを書く必要も無いでしょう Excelを開いておく必要もありません インポートとかリンクを調べてみれば

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

質問者からのお礼

ご回答ありがとうございます。

関連するQ&A

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

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

  • エクセルVBA ユーザーフォームの終了について

    エクセルVBAでユーザーフォームを作成しています。 コマンドボタンにVBAマクロを割り当てしているのですが 思うように動いてくれないので質問します。 コマンドボタンをクリックしたら望む動作 1、ワークシートを選択 2、その後、ユーザーフォームを消す。 と言う動作にしたいのですが、2の ユーザーフォームを消す方法、書き方が分かりません どなたか教えていただけないでしょうか 1の動作は以下のように書いています。その後の書き方を お願いします。 Private Sub CommandButton8_Click() ブック名 = "VBA演習" シート名 = "sheet1" Workbooks(ブック名 & ".xls").Worksheets(シート名).Activate End Sub (ユーザーフォームの名前は"テストフォーム"としてます)

  • VBAエクセルのフォームについて

    お世話になっております。 VBAエクセルのフォームについて教えていただきたいのです。 VBAで入力のフォームを作ったのですが(TEXT BOXが4つ、コマンドボタン1つ、コマンドボタンを押したときに登録される用にしたい) 各シートの集計にしたい為、各シート(31のシートがあります)に入力フォームがあります、その各シートでの入力結果を1つのシートに 集計したいのですが、どの様なコードにしたらようか判りません。 素人のためお手数ですが、なるべく判りやすくお願いします。 よろしくお願いします。

その他の回答 (1)

  • 回答No.1
  • FEX2053
  • ベストアンサー率37% (7917/21116)

出来ますよ。 まず、VBA上でこういうオブジェクト定義をして Dim XLAPP As Excel.Application Dim XLWB As Excel.Workbook Dim XLWS As Excel.Workshee こういう形でエクセルを開き Set XLAPP = CreateObject("Excel.Application") Set XLWB = XLAPP.Workbooks.Open("xxxxx.xls") Set XLWS = XLWB.Worksheets("Sheet1") こういう感じで「オブジェクト上の処理」とし作業すればオッケーです。 XLWS.Range("A1").Copy XLWS.Range("B1").Select XLWS.ActiveSheet.Paste 詳しいコードは探せば出てくると思いますけど、とりあえずは 「出来る」と言うことで。

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

質問者からのお礼

ご回答ありがとうございます。

関連するQ&A

  • ExcelVBAのコードが知りたい

    ちょっと古いことを教えてほしいのですが。 というのは、新しく知り合いになった方から、古いプログラム(Excel-VBA)を直したい、という相談を受けました。 ところが、ものすご~く古いものらしくて 1)VBAProjectを開いてみると、シートオブジェクトと標準モジュールはあるのですが、フォームが表示されません。     でも、実際の動きをみると、入力用のフォームなどは表示されます。 2)良く見ると(Sheet表示を全部見ると)、シートオブジェクトに表示されないものがあって、そこにX1DG,X2DG・・・という名前のダイアログシートがあって、そのシート上にフォームがありました。 3)Macroを動かすいわゆるボタンはなくて、リボンの中のアドインを選ぶと、”ユーザー設定のツールバー”が表示され、その中にプルダウンメニューが設定されていて、これを操作すると、それぞれの機能が動きます。 3)動作するVBAのコードは標準Module上に書かれていますが、上記のダイアログの中の定義体や、ユーザー設定のツールバーの中のコードがどこを探しても出てきません。 4)VBAの教科書などを見ると、どうもEXCEL95/Excel4.0の時代のもののように見受けられます。 5)今使用している(知り合いの方も、私も)ものは、WinVISTA・Excel2007なのです。 どうしたら、全体構成(VBA・DG)を見ることができるでしょうか? 教えていただけると、むちゃくちゃ嬉しいのですが。 宜しくお願いします。

  • ExcelVBAでユーザーフォームが勝手に閉じてしまいます。

    ExcelVBAでユーザーフォームが勝手に閉じてしまいます。 ExcelVBAを独学で始めてまだ2週間足らずの超初心者です。 Excelワークシートにコマンドボタン配置してそのコマンドボタンを押すとユーザーフォーム1が開き、ユーザーフォーム1に配置してあるリストボックスからリストをダブルクリックで選択すると、ユーザーフォーム2が開くように設定しています。ただ、ユーザーフォーム1のリストをダブルクリックして選択した時点でユーザーフォーム1が勝手に閉じてしまいます。ユーザーフォーム1を勝手に閉じさせないでコマンドボタンで閉じるようにしたいのですがどうしたらよいのでしょうか。レベルの低い質問かもしれませんが困っています。宜しくお願い致します。

  • Accessにエクセルからデータをインポートしたい(VBA)

    Access(2000)のVBAでExcel(2000)からデータをインポートしたいと思います。 詳細は以下の通りです。 フォームでコマンドボタンをクリック時にダイアログボックスが開き、ファイルを指定し、該当のシート(シート名はどのファイルも固定)のデータをアクセスのテーブルにインポートしたい。 どうしたらできるのかここ数日悩んでいます。 よい方法がありましたら教えてください。

  • エクセルVBAでVBAの修正は出来るのでしょうか?

    エクセルVBAでVBAの修正は出来るのでしょうか? あるエクセルファイルにマクロを組み込んでいます(ユーザーフォームも使用)。 このエクセルファイルを複数個フォルダ内にコピーしています。 このコピーした全てのファイルのマクロの修正をVBAで出来ないかと考えています。 修正箇所はモジュール内のコード修正、モジュールの追加、既存のユーザーフォームにボタン等の追加等です。 エクセルは2003を使用しています。 どなたか教えてください。

  • ExcelVBA ユーザーフォームのコードがない

    いつもお世話になっています。 Excel vbaで質問させてください。 あるExcelブック(test.xlsとします)を開くと、ユーザーフォーム(と思う)が表示されます。 (この時、Excelアプリケーションは「表示」されていてモーダルの状態です) ユーザーフォームで日付を選び、「これでOK」ボタンをクリックすると 新規ブックとして「text_0614.xls」が出来て、これが表示ブックとなります。 (元のtest.xlsは閉じられています) vbaコードの修正がしたくて、VBEから作業しようとしたところ ユーザーフォームモジュールも、標準モジュールも何も見当たりません。 Thisworkbookのイベントも何も書いてありません。 プロジェクトにパスワードがかかっているのかと思いましたが、もしそうだとしても プロジェクトウィンドウに、「フォーム」というフォルダは表示されると思いますし、 また、ダブルクリックしてもパスワードを求められることがありませんので パスワードがかかっているようには見えません。 これはExcelVBAのユーザーフォームじゃないのでしょうか?(VB?) または、もし、この「フォーム」フォルダごと、ユーザーに見せないやり方があるのでしょうか? どなたかご存知の方いらっしゃいましたらご教示ください! WinXP SP3 Excel2003 SP3 使用です。 どうぞよろしくお願いします。

  • (エクセル)別のブックにシートをコピーすると

    初めて質問します。 EXCEL2000で、VBAとテンプレートが同じブックに保管されています。(test1.xls) test1.xlsのユーザーフォームでデータを入力して、コマンドボタンを押すと、テンプレートが別ブックにコピーされ、セルが埋められるようにしたいのですが、テンプレートにシート間参照(temp!A1)を使っているので、コピー元のブックを参照するように書き換えられてしまいます。([test1.xls]temp!A1) がんばって検索したのですが、回避策を見つけることができませんでした。 よろしくお願いします。

  • EXCEL VBA コピー貼り付け時のチェック

    お世話になります。田中と申します。 VBAの練習で下記の操作を実現したいと思っておりますが、どうしたらよいのか分りません。 A.xlsというブックがあります。 A.xlsの[データ]というシートにボタンをおいてそのボタンをクリックしたら以下のような動作をしたいのです。 このA.xlsの[データ]シートのA1~L20までをコピーして、C:\Users\田中\DesktopにあるB.xlsというブックの[シート1]という名称の単にシートに貼り付けしたいのです。 ただし貼り付け時に他のユーザーがB.xlsを開いている場合は、貼り付け処理を中止したいのですが、そのようなユーザーに開かれているかどうかVBAでチェックする方法はありますでしょうか? どなたかお知恵をお借りできますでしょうか。 よろしくお願い致します。 環境 Windows7 Excel2013

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

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

  • 新規作成したExcelにVBAを登録したい

    お世話になります。 下記の手順で、新規のExcelにVBAを登録し、 実行したいと思っております。 (1)「元ファイル.xls」から、VBAで新規Excelbookを作成 (2)名前を「テスト.xls」にする (3)「テスト.xls」にVBAコードを登録する (4)(3)で登録したVBAを実行する そこで、(3)のVBAコードを登録する方法がわかりません。 お手数ですがご存じの方教えて頂けないでしょうか? 何卒宜しくお願い致します。

  • ExcelVBA2010 マクロが動作しない

    Excel2010のVBAについて質問します。 ブックAとブックBがあり、ブックAにはVBAのモジュールの記述がります。 そのブックAの中にあるシート1にコマンドボタンを作成し、このボタンにモジュールが登録されています。 ブックAを起動すると、ブックAの中にあるシート1をブックBにコピーします。 ブックBにコピーされたシート1のコマンドボタンに登録されているボタンをクリックすると、ブックAのVBAのモジュールが起動され動作されるはずですが、なぜかブックB内のシート1のコマンドボタンのモジュール先がブックAでは無くブックB内のリンク先に変更されてしまい、VBAが動作しません。 パソコンAでは動作し、パソコンBでは上記のエラーになってしまいます。 Excel本体の設定等を見比べましたが、一向にわかりません。 どうかご教授をお願いいたします。