• 締切済み

mdbをメールに添付したいのですが・・・

こんにちは メールにmdbを添付したいのですが、下記の方法ですとTxt・Xls・html・rtfでの 添付しか無いので、mdbをそのまま添付出来る方法を教えて頂きたいのですが わかる方いらしゃいましたらお願いします。 「補足」 ・容量が小さいmdbです。 ・Txt形式にすると空白が入るので使いたくありません。 Private Sub cmdMail_Click() On Error Resume Next DoCmd.SendObject objectType:=acSendTable, _ objectname:="T_Mail", _ outputformat:=acFormatTXT, _ to:=Me.メールアドレス, _ subject:="お疲れ様です。", _ messagetext:="???.mdbを添付致しました。後処理願います。" End sub

みんなの回答

回答No.1

まず、メールを送るPGはACCESSですか? 添付するmdbには何が入っているのですか? あと、メールを送るPGがACCESSであれば、添付されるmdbとは別のmdbでしょうか?

hirochan2001
質問者

補足

早速のお返事ありがとうございます。 説明不足でスミマセン!補足します。 >メールを送るPGはACCESSですか? はいAccess2000です。 >mdbには何が入っているのですか? 基本的には文字データです。「日付や数値・文字です。」 SQLServerからAccessでは入らない空白がTextにすると桁数 分入ってしまうのを嫌っています。 >メールを送るPGがACCESSであれば、添付されるmdbとは >別のmdbでしょうか? 現在は一緒なのですが、多分・・・別mdbにしないとムリですよね(^O^;

関連するQ&A

  • レポートをpdfに変換する方法

    現在、ボタンをクリックするとメールが起動しレポートが添付されるようになっています。 アドビアクロバット8のPDFに変換して添付させたいのですが上手くいきません。 Access2003だとPDFに自動で変換されないのでしょうか? どのように設定したら良いのか教えてください。 宜しくお願い致します。 Private Sub メール送信_Click() On Error Resume Next DoCmd.SendObject ObjectType:=acSendReport, _ ObjectName:=conReportName, _ OutputFormat:=acFormatPDF, _ To:=Me.メールアドレス, _ cc:=Me.メールアドレス1, _ Subject:="研修受講履歴", _ MessageText:="研修受講履歴を添付しましたのでよろしくお願いします." 'PDFやXLS添付ファイルの形式を指定する End Sub

  • ACCESSのモジュールで電子メールにファイルを添付したい

    DoCmd.SendObject で 電子メールを自動発信するモジュールを作りました。 追加機能として、wordファイルを添付したいのですが何かいい方法はありませんでしょうか? よろしくお願いします。

  • 特定のレポートだけをメールの添付ファイルとして送信

    Access2003のフォームでボタンをクリックすると特定のレポートだけをメールの添付ファイルとして送信したいです。 以前、ご教授頂き、別のファイルでは使えるのですが、新たに作ったファイルで上手くいきません。 是非、ご指導お願いいたします。 内容:社員がテストを受けた結果をメールで添付して送りたいです。 現状: テーブル T_社員マスター T_受験結果リスト クエリ  Q_受験結果 フォーム F_社員情報(クエリを基に作りました。) レポート R結果情報(社員番号ごとに受験結果のレポートを作りました。) report_open(cancel As Integer)のプログラムを記述するとメールソフトが起動しません。 --------------------------------------------------------------- Option Compare Database Option Explicit Private Const conReportName = "R結果情報" --------------------------------------------------------------- Private Sub メール送信_Click() On Error Resume Next DoCmd.SendObject ObjectType:=acSendReport, _ ObjectName:=conReportName, _ OutputFormat:=acFormatPDF, _ To:=Me.eメールアドレス, _ cc:=Me., _ Subject:="結果を添付します", _ MessageText:= End Sub --------------------------------------------------------------- Public Sub SetFilter(rpt As Report) With rpt .Filter = "[受験番号]=" & Forms!F_社員情報!受験番号 .FilterOn = True End With End Sub --------------------------------------------------------------- ここまでの記述だと、フォーム上にある【メール送信】ボタンをクリックすると メールが起動されアドレスや件名が入ります。 問題は、添付ファイルが社員全員のものが添付されてしまします。 そこで、フォーム上に表示されている受験番号の人だけをレポートから抽出して添付したいです。 下記プログラムを記述しました。 --------------------------------------------------------------- Option Compare Database Option Explicit --------------------------------------------------------------- Private Sub report_open(cancel As Integer) If CurrentProject.AllForms("F_社員情報").IsLoaded Then SetFilter Reports!R結果情報 End If End Sub --------------------------------------------------------------- Private Function IsLoaded(strName As String) _ As Boolean IsLoaded = (SysCmd(acSysCmdGetObjectState, acForm, strName) <> 0) End Function --------------------------------------------------------------- Private Sub report_open(cancel As Integer)を記述するとメールが起動されなくなります。 フォームを開いた状態で、レポートをダブルクリックすると、 「コンパイルエラー、subまたはfanctionが定義されていません。」と表示されます。 どこを修正したらよいのでしょうか? 小生プログラムの知識が全くありません。これも、サンプルを見ながら作りました。 宜しくご教授くださいますようお願いいたします。

  • Access2003のフォームでボタンをクリックすると特定のレポートだ

    Access2003のフォームでボタンをクリックすると特定のレポートだけをメールの添付ファイルとして送信したいです。 よろしくご教授ください。<(_ _)> 研修の受付フォームに送信ボタンを作りました。 ボタンをクリックするとメールソフトが起動されPDF添付ファイルとして添付されるのですが フォームと同じ社員番号だけ添付したいのです。 状況 テーブル T_社員マスター T_講座マスター T_研修受付リスト クエリ  Q_研修受付 フォーム F_研修受付入力(クエリを基に作りました。) レポート R_社員ごと受講リスト(社員番号ごとに研修受講履歴のレポートを作りました。) 作ったプログラムです。(小生プログラムの知識がありません。これはネットからサンプルを見ながら 作ってみました。おかしな所がございましたらご教授くださいませ) Option Compare Database Option Explicit '”R_社員ごと受講リスト”の所にはレポートの名前を書く Private Const conReportName = "R_社員ごと受講リスト" ----------------------------------------------------------------- Private Sub メール送信_Click() On Error Resume Next DoCmd.SendObject ObjectType:=acSendReport, _ ObjectName:=conReportName, _ OutputFormat:=acFormatPDF, _ To:=Me.メールアドレス, _ cc:=Me.メールアドレス1, _ Subject:="研修受講履歴", _ MessageText:="研修受講履歴を添付しましたのでよろしくお願いします." 'PDFやXLS添付ファイルの形式を指定する End Sub ----------------------------------------------------------------- Private Sub report_open(cancel As Integer) If IsLoaded("F_研修受付入力") Then Forms("F_研修受付入力").SetFilter Me End Sub ----------------------------------------------------------------- Public Sub SetFilter(rpt As Report) With rpt .Filter = "T_社員マスター.社員番号 =" & 社員番号 .FilterOn = True End With End Sub

  • アクセスのVBAについて、フォームの On Error Goto についておしえてください。

    Private Sub cmd次_Click() On Error GoTo Err DoCmd.GoToRecord , , acNext Exit_Click: Exit Sub Err: MsgBox "この先にレコードがなくなると、ここをつうかするのだろうか。" Resume Exit_Click End Sub 一連の流れについて,ご解説ください。よろしくお願いいたします。

  • GoToRecordで実行時エラー '2105'

    教えてください。Access2000です。 Private Sub 次へ_Click() On Error GoTo Err_次へ_Click On Error Resume Next DoCmd.GoToRecord , , acNext Exit_次へ_Click: Exit Sub Err_次へ_Click: MsgBox ERR.Description Resume Exit_次へ_Click End Sub って書いたのですが、最後のレコードまで行った後 「次へ」をクリックすると実行時エラーになってしまいます。 移動できませんとかメッセージで逃げたいのですがどうすればいいのでしょうか? お願いします。

  • 100問を超えたら終了ですのメッセージをだしたい(あくせす)

    Private Sub cmd次_Click() On Error GoTo Err_cmd次_Click DoCmd.GoToRecord acForm, "F_さあやってみよう", acNext If (Forms!F_さあやってみよう!txt番号 = 100) 'これだと100問になったときにメッセージがでてしまいます。100問を終了してボタンをクリックしたら 終了のメッセージを表示したいのですが、 101という番号はありません。 Then Beep MsgBox "終了です(*^。^*)", vbInformation, "終了" End If Exit_cmd次_Click: Exit Sub Err_cmd次_Click: MsgBox Err.Description Resume Exit_cmd次_Click End Sub よろしくお願いしますm(__)m

  • アクセスVBAのエラーについて

    フォームを閉じるためにフォームにボタンを置いて、イベントプロシージャに下記のように書き込みました。すると添付画像のエラーが返ってきてマクロが動きません。 Private Sub コマンド103_Click() On Error GoTo Err_コマンド103_Click DoCmd.Close Exit_コマンド103_Click: Exit Sub Err_コマンド103_Click: MsgBox Err.Description Resume Exit_コマンド103_Click End Sub で、「ファイル-オプション-現在のデータベース」の”フォームの表示”を問題のフォームに切り替えたら問題なく動作します。 つまり”フォームの表示”で選んだフォームでしかコマンドボタンのマクロが動きません。全てのフォームでマクロが動くにはどうしたらよいのでしょうか?

  • ACCESS 2000でのExcel出力

    ACCESS 2000でExcel出力時に下記のソースで出力しています。 出力先をユーザーに選択させたい(Windowsでファイル保存時に出てくるやつみたいに)のですが、どのような方法がありますか? Private Sub 集計結果_Click() DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel8, _ "クエリA", "c:\集計.xls" End Sub 宜しくお願いします。

  • コマンドボタン名を取得して変数に代入したい。

    OS:windowsXp Access Version:Xp 既出でしたらすみません。 INDEXのフォームにて複数コマンドボタンを作り、それを押すと各登録フォームや集計フォームが開くようにしています。 さて、質問なのですが、コマンドボタンで別のフォームを開く時の処理を(フォーム名が違うだけで後は同じなので)まとめて書きたいのです。 現在は次のようにやっています。 ------------------------------------------------- Private Sub F_メニュー_Click() Call close_form DoCmd.OpenForm "F_メニュー", acNormal, , , acFormEdit, acWindowNormal End Sub Private Sub F_売上伝票_Click() Call close_form DoCmd.OpenForm "F_売上伝票", acNormal, , , acFormEdit, acWindowNormal End Sub      (中略) Private Sub 事業所別集計_Click() Call close_form DoCmd.OpenForm "F_事業所別集計", acNormal, , , acFormEdit, acWindowNormal End Sub Private Sub 消費税変更_Click() Call close_form DoCmd.OpenForm "F_消費税変更", acNormal, , , acFormEdit, acWindowNormal End Sub Private Sub システム終了_Click() Call close_form DoCmd.RunCommand acCmdExit End Sub Private Sub close_form() msgbx = False DoCmd.Close acForm, "index", acSaveYes End Sub ------------------------------------------------- これを  ボタン名_Click() ではなく  frm_open() 押されたボタン名を変数に取得(ボタン名=Form名にします。) DoCmd.OpenForm 押されたボタン名変数 のように共有したいのです。 どうすれば出来ますでしょうか?ご指導よろしくお願いします。