【最大10000ポイント】当たる!!質問投稿キャンペーン!

AccessDBにて、ある伝票をレポート出力しました。
今まではワードにて伝票作成しメール送信していたやつです。
現在はレポート印刷で「紙」になってしまいます。
できれば、「ワードファイル」または「HTMLファイル」に出力して、メールへ添付をしたいのです。
なので、伝票をワード形式にしたいのですが、Accessのエキスポートにはワードはありせん。
ACCESSDBへデーターを入力して、「ボタン押下」で
ワードのフォーマットのファイルに出力する方法は
ないのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (2件)

97ですが、出力したいレポートを表示してメニューより


ツール→Office LinksでWordかExcelに出力できます。
それより新しい2000などでも可能だと思います
    • good
    • 2

こんにちは、ats8181oyajiです



では、私はHTMLにする方法を。。。

プレビューさせた後、右クリックでメニュー表示のエクスポート
HTMLを選択で、HTMLに出力できます
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QAccessのレポートをWordに移行できますか?

会員が作成したAccessでレポートを作成したのですが、それをWordに移行したいと思います。
出来なければ、幅や高さはプロパティで見れるので、
Wordで同じのを作っても良いのですが、
背景色が4653055という番号でして‥‥

AccessからWordに移行は出来ますか?

Aベストアンサー

レポートのプレビュー画面でツールメニューのどこかかツールバーのアイコンの中にWordへエクスポートってのはありませんか?
うまくいけば、キレイに変換できるかも
プレビュー中のレポートを印刷するかわりにWordの文章にするだけなので、元データを修正してもWordの内容は変わりませんが…

QAccessからWordの差し込み印刷文書を印刷するVBAについて教えてください

Access初心者です。
使用バージョンは、Access・Wordともに2007です。
Accessのクエリー/テーブルをWord文書に差し込み、Accessから起動してその差し込み文書を印刷したいのですが、うまくいきません。
Getobjectを使ってWordの差し込み文書テストを印刷する以下のようなプロシジャを作成しました。
予め、手動でWordを起動してから、このプロシジャを実行すると、文書『テスト』を開く前に「次の文書を開くと次のコマンドが実行されます。Select*fromテーブル名 データベースのデータが文書に挿入されます続行しますか?」のメッセージが表示されて応答確認が来るのですが、Wordを起動せずに実行すると、上記のメッセージは表示されず、テーブル内のデータに更新がかかっているにもかかわらず、上記メッセージで「いいえ」と応答したのと同様の状態で印刷されます。

はたして、こんなプロシジャでよいのか、使用方法が間違っているのかすら見当がつきません。どなたかアドバイスをお願いいたします。

(作成したプロシジャ)
On Error GoTo エラー発生
Dim WordFilePass As String
WordFilePass = "C:\Users\User1\Documents\テスト.docx"
Dim MyWord As Word.Application
Set MyWord = GetObject(, "Word.Application")
MyWord.Visible = True
MyWord.Documents.Open FileName:=WordFilePass
MyWord.ActiveDocument.PrintOut
MyWord.Application.Quit
Set MyWord = Nothing
エラー発生:
If Err.Number = 429 Then
Set MyWord = CreateObject("Word.Application")
Resume Next
Else
MsgBox "エラーNo : " & Err.Number & vbNewLine & vbNewLine & _
"エラー内容 : " & Err.Description
End If

Access初心者です。
使用バージョンは、Access・Wordともに2007です。
Accessのクエリー/テーブルをWord文書に差し込み、Accessから起動してその差し込み文書を印刷したいのですが、うまくいきません。
Getobjectを使ってWordの差し込み文書テストを印刷する以下のようなプロシジャを作成しました。
予め、手動でWordを起動してから、このプロシジャを実行すると、文書『テスト』を開く前に「次の文書を開くと次のコマンドが実行されます。Select*fromテーブル名 データベースのデータが文書に挿入されます...続きを読む

Aベストアンサー

変数名がダブっていました。
下記*行変更下さい。

Private Sub InsertDoc(MyDataName As String) 'MyDataNameは、元データのテーブル又はクエリー名 *
Dim myWrd As Object 'オリジナル文書をセット
Dim myTMP As Object 'テンプレート文書用
Dim MyName As String 'テンプレート文書名
Dim myLooP As Long
Dim LineNum As Integer

'差込印刷のオリジナル文書
Const myFileP As String = "C:\差込印刷.doc"
'テンプレートを保存するフォルダパス(+\)
Const myPath As String = "C:\"

LineNum = DCount("*", MyDataName) 'テーブル又はクエリーのレコード数を取得 *

Qアクセスのレポートをワードにマクロ等で変換

アクセスのレポートをワードにマクロ等で変換したいのですが?
マクロの作成ではできるのですが、
ワードに変換し、ファイルを保存するフォルダーを指定し、[ファイル名]+YYMMDD.doc
としたいのですが、マクロかモジュールの書き方教えてください。
よろしく、お願いします。

Aベストアンサー

エラー処理はほとんどしていませんが、以下の
コードではどうですか。
フォームのボタンクリックのイベントに設定
します。インプットボックスが二回表示されます。
保存するレポート名と保存先です。保存先は
たとえば、

C:\Documents and Settings\user\デスクトップ\hogehoge

あるいは、

C:\Temp

などと入力します。


Private Sub コマンド0_Click()
Dim strReportName As String
Dim strPath As String
Dim strMsg1 As String
Dim strMsg2 As String

strMsg1 = "保存するレポートの名前を入力してください"
strMsg2 = "保存先をフルパスで入力してください"

If MsgBox("Wordで保存しますか?", vbYesNo) = vbYes Then
strReportName = InputBox(strMsg1, "レポート名")
strPath = InputBox(strMsg2, "保存先")
If strPath <> "" Then
DoCmd.OutputTo acOutputReport, strReportName, acFormatRTF, strPath & "\" & Format(Date, "yyyymmdd") & ".doc", False
End If
End If
End Sub

エラー処理はほとんどしていませんが、以下の
コードではどうですか。
フォームのボタンクリックのイベントに設定
します。インプットボックスが二回表示されます。
保存するレポート名と保存先です。保存先は
たとえば、

C:\Documents and Settings\user\デスクトップ\hogehoge

あるいは、

C:\Temp

などと入力します。


Private Sub コマンド0_Click()
Dim strReportName As String
Dim strPath As String
Dim strMsg1 As String
Dim strMsg2 As String

strMsg1 = "保存するレポートの名前を入力してくださ...続きを読む

Qaccessレポートにwordの文書を貼り付ける

accessレポートにwordの文書を貼り付ける
accessは、レポートにword,excelにオフィスリンク機能や差し込み印刷はあるのは、わかっていますがあえて使わずに作業をしたいのです。
利用ソフトはアクセス2007、2003、2000どれも試しました。
accessでレポートを作成する時に、wordやexcelで作成した物をコピーして張り付けるということが可能ですが、wordの文書を貼り付けると通常は80%程度の大きさにしかなりません。
しかしコピーして貼り付けたら、ほぼ同一の大きさになったことがたまに何度かあります。
理由はわからないのですが、やり方が(法則?)わかれば教えてください。

Aベストアンサー

回答します。アクセスのレポートをワードのリッチテキストファイル形式で保存をした後、これにテキストボックスを挿入し、そのなかにワードの文書ファイルを貼り付けることが出来ますが、これではいけないのでしょうか。

QACCESSのレポートにWORDで作った文書を貼り付けるには?

ACCESS初心者です。
WORDで既に作成してある表があって、それをACCESSのレポートにしたいのですが、
カット&ペーストすると、左側が切れて印刷されてしまいます。
(プレビューで見ると、ちゃんと入っているように見えるのですが…)
ACCESSの設定が悪いのか?WORDの設定が悪いのか?分かりません。
うまく設定する方法を教えてください。

ちなみに、他に良い方法があれば、そちらも教えてください。

Aベストアンサー

推測ですが余白がWordのものがある上にAccessのがあるので
右下にずれるんでしょう。

プリンタに縁なし印刷の設定があるなら
Access側のページ設定で縁なしにしないと無理でしょうね。

QACCESS VBAからWordのテンプレートに

いつもお世話になっております。

今回、やる作業というのは下記のとおりです。

1.フォームのチェックボックスにチェックをする
2.帳票出力ボタンを押す
3.指定のWordテンプレート起動する
3.チェックの有無によって、Wordテンプレートにあらかじめ入力しておいた「有 無」という言葉を○で囲ったように表示する。

つまりフォームのチェックボックスにチェックがついていれば、Wordの「有」を○で囲い、チェックがなければ「無」を○で囲むっといった具合です。

この対応する言葉を○で囲むというのはどのように記述すればいいんでしょうか?
ACCESS VBAを使っております。

WordでムリなようでしたらExcelでの方法でも結構です。。

拙い文書力で申し訳ございませんが、宜しくお願い致します。

Aベストアンサー

最初、オートシェイプで○をつける方法しか思い浮かばなかったのですが、#1 の方がおっしゃるように、「書式」-「書式拡張」-「囲い文字」を使用する方法が簡単で良いと思います。
Access、Word のバージョンがわかりませんが、Word に、「ツール」-「マクロ」-「新しいマクロの記録」というのがありますよね?「囲い文字」の操作をマクロで記録しておいて、それを Access の VBA に流用すればよいと思います。(念のため言っておきますが、コピー&ペーストで貼り付けただけではダメです。)
「囲い文字」にする文字の場所の特定方法も、 Word の「編集」-「検索」をマクロで記録して Access の VBA に流用すればよいと思います。
もし、囲い文字処理をする文字以外に「有」または「無」がテンプレート中の文章に存在するなら、「次を検索」を繰り返してで目的の位置まで移動させるとか、テンプレートでは囲い文字処理対象の「有」の場所に「@U」、「無」の場所に「@MU」などのように文章中に存在しない文字列を記述しておいて、その文字列を検索→置き換え、のようにしてもよいと思います。

最初、オートシェイプで○をつける方法しか思い浮かばなかったのですが、#1 の方がおっしゃるように、「書式」-「書式拡張」-「囲い文字」を使用する方法が簡単で良いと思います。
Access、Word のバージョンがわかりませんが、Word に、「ツール」-「マクロ」-「新しいマクロの記録」というのがありますよね?「囲い文字」の操作をマクロで記録しておいて、それを Access の VBA に流用すればよいと思います。(念のため言っておきますが、コピー&ペーストで貼り付けただけではダメです。)
「囲い文字」に...続きを読む

Qaccessのリポートを、excelに出力させて印刷させたい

access2000、勉強中の初心者です。
accessのレポートは、レイアウト等が変更しずらく使い勝手が悪いため、excel2000に出力させて印刷させたいと思います。
可能なのでしょうか。

Aベストアンサー

マクロですと ”出力”です。

オブジェクトの種類を ”レポート”
オブジェクト名は レポート の名前
出力ファイル形式 ”Microsoft Excel”
出力ファイルは 保存したいファイル名(パスも必要です。c:\My--とか)

QアクセスVBAのMe!と[ ]

基本的なことですみません。

アクセスのイベントプロシージャで、Me!ってありますけど、これはどういう意味なんでしょうか?

また、Me!の後に、Me!.~~と書く場合と、Me!.[~~]と書く場合がありますが、どこが違うのでしょうか?

Aベストアンサー

>プロシージャ内で[]を使う場合は、そのフォーム外のオブジェクトを使う場合と考えてよろしいでしょうか?
別のオブジェクトを使う場合だけではありません。
Hensu = Me![Text1]のようにHensuという変数に自身のTest1の値を代入する場合のように。
[]で括られているのがオブジェクト名やコントロール名だよという事。
クエリの抽出条件に存在しない[?]とすれば?というコントロール等が参照できないので?というダイアログが表示されるように?というオブジェクトやコントロールは何?と聞いてくるように。
>フォーム内のオブジェクトの場合はあくまでMe!で良いのでしょうか
Forms.[フォーム名]![コントロール名]やForms![フォーム名]![コントロール名]が構文。
アクティブなフォームが自分自身ならForms![フォーム名]の変わりにMeでもOKですという事。

と言う解釈の方が良いと思います。

QAccess サブフォームでの選択行の取得

こんにちは。

Access初心者です。

サブフォームでテーブルの項目を表示させていますが、
選択された行を取得する方法はありますか?
サボフォームの下の方に現在選択されているレコード数が表示されてますが、その値でかまいません。

調べているのですが、なかなか検討がつきません。
宜しくお願い致します。

Aベストアンサー

フォーム名がフォーム1、サブフォームコントロールの名前がサブフォーム1だとすると、

Forms!フォーム1!サブフォーム1.Form.CurrentRecord

で取得できます。
(「Forms」と「Form」がありますのでご注意下さい)


また、フォーム1にコードを記述する場合であれば

Me!サブフォーム1.Form.CurrentRecord

サブフォーム1へのコード記述であれば

Me.CurrentRecord

という構文によっても、それぞれ取得が可能です。

QACCESSでの改行コード

ACCESSでの改行コードの入力方法を確認させてください。

ACCESSのテーブルにテキスト型のフィールドを用意し、一つのフィールドに改行が入ったデータを入力したいと考えています。

以下の方法を試してみましたが、改行コードが入っていないように思えます。

1.エクセルで一つのセルで、ALT+ENTERで文字列を入力し、テーブルにデータをインポート。

2.上記エクセルのデータをCSVで保存したものをテーブルにインポート。

これら2つのデータをテーブルで確認すると、改行はされていないですし、テーブルのデータをエクスポートしたものも改行はされていませんでした。

フィールドの設定で何か必要なんでしょうか?
それとも、テキスト型のフィールドには改行コードを持てないんでしょうか?

Aベストアンサー

> 改行コードが入っていないように思えます。

No.1の方の回答にもある通り、Excelのセル内とAccessのフィールド内とでは、
改行コードが違います。
ただ、Excelの改行コード自体は、インポートの際に取り込まれていますので、
Accessにてクエリ等を使用して変換してやれば、改行表示されるようになります。

例えば、Excelからのインポートデータが保存されているテーブルを「テーブル1」、
改行コードが入ったフィールドを「フィールド1」とすると、以下のSQL文で改行
コードを変換できます(添付画像は同じもののデザインビュー):

Update テーブル1 Set フィールド1 = Replace([フィールド1],Chr(10),Chr(13) & Chr(10));


※Chr関数は、引数で指定したコードに対応する文字を返す関数です。
  「Chr(10)」はラインフィード(=Excelのセルでの改行コード)を、
  「Chr(13) & Chr(10)」はキャリッジリターン&ラインフィード(=同・Access)を
 それぞれ表します。

※Replace関数は、第1引数で指定した文字列の中から第2引数で指定した
 文字列を探し、あった場合は第3引数で指定した文字列に置換する関数です。
 但し、Access2000では、クエリ上では使えなかったと記憶しています。
 この場合は、標準モジュールでユーザー定義関数を作成してやれば、
 その関数を使用することで同様の処理が行えます。

一例(Replace関数の省略可能な引数を全て省略したもの):

Public Function Replace2(sExp As String, sFnd As String, sRpl As String) As String
  'Replace2関数で指定した引数をそのままReplace関数に渡し、
  '戻り値をそのままReplace2関数の戻り値にします。
  Replace2 = Replace(sExp, sFnd, sRpl)
End Function

> 改行コードが入っていないように思えます。

No.1の方の回答にもある通り、Excelのセル内とAccessのフィールド内とでは、
改行コードが違います。
ただ、Excelの改行コード自体は、インポートの際に取り込まれていますので、
Accessにてクエリ等を使用して変換してやれば、改行表示されるようになります。

例えば、Excelからのインポートデータが保存されているテーブルを「テーブル1」、
改行コードが入ったフィールドを「フィールド1」とすると、以下のSQL文で改行
コードを変換できます(添付画像は...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング