- ベストアンサー
AccessとWordの連携について教えてください。
nicotinismの回答
当方 Office2010 なので参照設定は、Microsoft Word 14.0 Object Library です。 ワードのVBAなんぞは知らんので、ワードのマクロの自動記録で出来たものを Accessにコピペしただけです。 詳しいことはサッパリ分かりませんのでご勘弁を。<(_ _)> Private Sub cmd実行_Click() Dim oWRD As New Word.Application oWRD.Visible = True '要らないかも? With oWRD .Documents.Add DocumentType:=wdNewBlankDocument '新規 With .Selection .TypeParagraph '改行? .TypeText Text:=Me!PcDrive 'Me!会社名に変更を .HomeKey Unit:=5, Extend:=wdExtend .ParagraphFormat.Alignment = wdAlignParagraphCenter 'センター合わせ .EndKey Unit:=wdLine .TypeParagraph .TypeParagraph .HomeKey Unit:=wdLine .ParagraphFormat.Alignment = wdAlignParagraphLeft .TypeText Text:=Me!VolumeName 'Me!担当者名 に変更を End With .ChangeFileOpenDirectory "D:\" '既定のマイドキュメントなどに保存なら不要 .ActiveDocument.SaveAs2 FileName:="abc.docx", _ FileFormat:=wdFormatXMLDocument, _ LockComments:=False, _ Password:="", _ AddToRecentFiles:=True, _ WritePassword:="", _ ReadOnlyRecommended:=False, _ EmbedTrueTypeFonts:=False, _ SaveNativePictureFormat:=False, _ SaveFormsData:=False, _ SaveAsAOCELetter:=False, _ CompatibilityMode:=14 '多分ワードのバージョン番号 End With oWRD.Quit savechanges:=False MsgBox "さて、どうかな?" End Sub
関連するQ&A
- Access VBA 参照設定とは・・?
Access初心者です。2003を使用しています。 ライブラリの参照設定(この表現でわかるでしょうか?)で参照するライブラリを増やし、モジュールを作成しました。このモジュールを含むツールは問題なく私のPCでは動いていましたが、ファイルサーバに投入し他のPCで実行させると、「・・・参照する切断された参照が含まれています。」とエラーがでてしまいます。 エラーを一旦閉じ、参照設定を見ると「(非参照)・・・・」にチェックが入っていました。このチェックを外すと問題なく動きます。チェックを外す作業を他の人にやってもらったので、ライブラリ名までわかりませんが、ツール作成時に「Microsoft ActiveX Data Object 2.1 Library」を参照可能にしました。 以下が初心者な質問ですがご教授いただきたい部分です。 ライブラリの参照設定は、インストールされているAccessに設定されるのでしょうか?それとも、作成したファイル毎の設定になるのでしょうか?前述の場合でしたら、ツールを配付した先で設定を変更してもらわねばなりません。後述でしたらモジュールをインポートした際に参照設定を変更しなければなりません。 また、参照設定の変更はVBAを用いて変更可能でしょうか?(フォームボタンから参照のON・OFF) へたくそな文章で伝わり難いとは思いますが、どなたかご教授ねがいます。
- ベストアンサー
- その他(データベース)
- ACCESSのVBAについて
ACCESSのVBAを使って、データの集計・分析などをしてEXCELに出力、さらにそのEXCELを少しいじる、←このVBAをVBSで実行 といった事をしていたのですが、 会社の端末が一部Office2003から2010に変わったため、参照設定に不具合が出てきました。 内容は、元々2003で作成されたデータベースを2010で開くとVBAの参照設定が「Microsoft Access 11.0 Object Library」だったものは「Microsoft Access 14.0 Object Library」に変わるのですが、 「Microsoft Excel 11.0 Object Library」は変更されずに参照不可になってしまいます。 以前、別のところで同様の質問をした際に、 →「参照設定」をして、コードを作成したあと、コードに使われている定数を全部調べ上げて、変数宣言のコードを作成し、 参照設定のチェックを外して、宣言のコードを追加する、ということで、参照設定の対策をします。 といった回答を頂いたのですが、いまいち理解できていません。 以下のコードをEXCELの参照設定を外しても動くようにするにはどのようにしたら良いのでしょうか?よろしくお願いします。 Sub TEST() Dim xls As Excel.Application Dim wb As Excel.Workbook DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "TEST", "C:\TEST.xls", True Set xls = CreateObject("Excel.Application") Set wb = xls.Workbooks.Open("C:\TEST.xls") With xls .Sheets("Sheet1").Select .Range("A1").Value = "成功" .Visible = True End With End Sub
- ベストアンサー
- Visual Basic
- AccessのVBAの記述について
たびたびお世話になります AccessのVBAで、フォーム上にあるテキストボックス(CadrDate)のデータを同一フォーム内の別のテキストボックスに貼り付ける操作はできるのでしょうか? 出来るのであれば記述文を教えてください。
- ベストアンサー
- その他(データベース)
- ACCESSの参照設定について
Microsoft ActiveX Data Objects 2.1 と Microsoft DAO 3.6 Object Library の違いは何でしょうか? また両者のメリット,デメリットを教えて下さい。 アクセスにて,データを加工したりするツールを作成しようとして簡単なVBAのコードを書いたりしています。
- 締切済み
- その他([技術者向] コンピューター)
- アクセスVBAの参照設定
アクセスVBAからエクセルを使うためにVBAのツールメニュでExcel11.0 Object Libraryを参照設定すると、なぜか「参照不可」になってしまいます。 別のパソコンでは問題ありません。 原因は何でしょうか?どうすれば解決できるのでしょうか? よろしくお願いします。
- 締切済み
- その他MS Office製品
- アクセスvbaでクリップボードにコピーの動作を実行
アクセスvbaでクリップボードにコピーの動作を実行したいです。 エクセルなら、 Sub test() Dim buf As String Dim CB As New DataObject buf = "test" With CB .SetText buf ''変数のデータをDataObjectに格納する .PutInClipboard ''DataObjectのデータをクリップボードに格納する .GetFromClipboard ''クリップボードからDataObjectにデータを取得する Debug.Print .GetText ''DataObjectのデータを変数に取得する End With End Sub これが実行できるのですが、 どうやらアクセスだと Dim CB As New DataObject これがエラーになるようです。 Dim CB As Objectにすると .SetText buf で実行時エラー91になります。 (「オブジェクト変数またはWithブロック変数が設定されていません」) http://officetanaka.net/excel/vba/tips/tips20.htm によると、 「DataObjectオブジェクトはMSFormsのメンバです。使用するには、Microsoft Forms 2.0 Object Libraryを参照設定します。または、ブックにUserFormを挿入すると自動的に参照設定されます。」 なので、アクセスvbaの参照設定で「Microsoft Forms 2.0 Object Library」を探したのですが、 ありませんでした。 当方バージョンは2010です。 アクセスでは不可能と言うことでしょうか? ご教授よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- ACCESSでのVBA標準出力について
いつもお世話になっております。 皆様の知識をご教授いただければと思います。 ■実現したい内容 テキストボックスにコマンドプロンプトの出力結果を表示させたいと考えております。 テキストボックス1 = shell (cmd /k ”ipconfig.exe”) コマンドボタンを実行すると コマンドプロンプトが起動 ”ipconfig”実行 実行結果をみると、テキストボックスには数字の0が表示されているので 何がしかの結果がかえってきているのですが 何かが足りないとは思うのですが 何かがわかりません。 ””内にリダイレクトを入れると、テキストなどに標準出力を変更するのは できたのですが、ACCESSのフォーム内のテキストボックスに変更するのは 可能なのか否か 可能であれば、EXCELのフォームにも応用が利きそうなので
- ベストアンサー
- オフィス系ソフト
- EXCEL2000 VBAでのWORD参照設定
EXCEL2007では、VBEのメニューから"MICROSOFT WORD *.* OBJECT LIBRARY"の参照設定が出来ますが、EXCEL2000ではWORD参照設定が見当たりません。 EXCEL2000 VBAでのWORD参照設定方法を教えて下さい。 会社では、まだEXCEL2000を使用しているので、よろしくお願いします。
- ベストアンサー
- Visual Basic
- ACCESS2007 VBAでのFilterOnについて
はじめまして。 ACCESS2007 VBAでのFilterOnについて教えてください。 ACCESS2003で、フォーム上でレコードを抽出するのに、FilterOnを使用して行っていました。未連結テキストボックスに入力した文字列をキーにして「抽出」「解除」ボタンで実行してさせていました。連続して「抽出」「解除」を繰り返しても問題ありませんでした。 ところが、ACCESS2007においても実行できるのですが、連続して操作するとうまくいきません。2回目以降テキストボックスに何を入力しても、1回目にテキストボックスに入力した文字列で抽出しまうのです。解決策はあるのでしょうか?
- ベストアンサー
- Visual Basic
- エクセルVBAについて
現在Excel2010を使っています。 以前に使っていたACCESSのデータを移すという話になり、 こちらを頼りに何とかコードまで打ち込みました。 ただ、実行に問題点があるようなので以下の2点について聞きます。 http://okwave.jp/qa/q3333180.html 質問1 このコードは標準モジュールというところに書いてますが、 書く場所はここでいいのでしょうか。 commandbutton1というオブジェクトを作ってもデバッグにすら入ってくれません。 質問2 ツール→参照設定で Microsoft ActiveX Data Object 2.x Library Microsoft Scripting Runtime にチェックを入れておいてくださいとありますが、 2010ではどこに設定があるのでしょう。
- ベストアンサー
- その他MS Office製品
お礼
ご回答いただきましてありがとうございました。 教えていただいたおかげでなんとか無事に解決いたしました。 もう少し自分でも勉強してみようと思いました。 ありがとうございました。