-
三流君の [コンビニ系HPへ] [VBA系HPへ] [ASP系HPへ] [愚痴系HPへ]

<Access97 マクロをモジュールへ変換して楽をする>

戻 る サンプル→0218.LZH 14KB をダウンロードして、見てください。
Access97 test0218.mdb が入っています


下記のような質問メールをいただきました。
(おいおい、過去の質問は、、はやくまとめてよ、、)
---------------
>Access97を使用していますが、Accessで書き込んだデータをからOutlook 
>Expressの新規メールの内容に貼り付けるいい方法があったら教えてくださ
>い。
>添付ファイルではなく、実際のメールの内容として表示し、そのまま送信が
>できるようにしたいのですが。
>難しいでしょうか。
---------------

サンプルになるか、わかりませんが、
作成してみようと思います。
*サンプルと画像、あわせて見てください。

まず最初にAccessの機能にあるか、調べてみます(予想してみます)
私の場合は、ヘルプを見て調べるか、詳しい後輩に聞く、
マクロコマンドでないか調べてみるのパターンです。

今回、業務外のこと(メルマガの読者からの質問なので)
をできる後輩に聞くことができないので、
マクロコマンドで探してみました。

マクロの新規作成を押して、アクションを探します。
おっ、オブジェクトの送信って、それっぽいのがアルジャン。


次にパラメーター?設定値をいれます。
オブジェクトの種類とかは無視して、
宛先     ken3@******.or.jp
件名     テストです、うまくいくかなぁ?
メッセージ  ダメでしょたぶん
に適当なテストデータを入れます。

保存後、うまく行くかマクロを実行して、
単体機能のテストを行います。
なんとか、Outlook Express の送信箱に入りました。
*Outlook97 とかが標準になっていると、そちらに入ります。
  標準がOutlook Express か確認します。



マクロが無事動いたので、これをVBA(モジュール)に変換します。
変換方法は、簡単で、
ファイル・名前を付けて保存/エクスポート
を選択後、まんなかの Visual Basic モジュールを選択します。

すると、マクロがVBAに変換されます。



次に、モジュールで変換されたマクロの中身を確認します。
下記のようなモジュールが作成されてます
'------------------------------------------------------------
' マクロ1
'
'------------------------------------------------------------
Function マクロ1()
On Error GoTo マクロ1_Err

    DoCmd.SendObject , "", "", "ken3@******.or.jp", "", "", "テストです、うまくい
くかなぁ?", "ダメでしょたぶん", False, ""


マクロ1_Exit:
    Exit Function

マクロ1_Err:
    MsgBox Error$
    Resume マクロ1_Exit

End Function




これで、宛先と件名、メッセージのパラメータの位置がわかります。
*SendObjectにマウスを合わせ、F1キーを押すと、ヘルプが見れます。

あとは、現在固定値で処理している項目を変数にするなどして、
処理します。

下記、フォームから送信の例です。参考となれば、、、
'-------------------------
Private Sub B_Send_Click()

    '送信確認
    If MsgBox("メールを送信します", vbYesNo) = vbNo Then
        Exit Sub
    End If

    'マクロを変換して、ただ、フォームの値を渡しただけです。
    DoCmd.SendObject , "", "", Me![F_TO], "", "", Me![F_件名], Me![F_本文], False, ""

    '終了メッセージ
    MsgBox "送信箱に保存されたと思う メールソフトを開いて確認してください"

    'テーブルからの場合は、テーブルを開いて、読みこんで処理してください

End Sub
'--------------------------





なんか、質問の回答と違うような気がするけど、いいや。。。

今回のAccess マクロをVBAに変更、、どうでしたか?

えっ、そんなの知ってた、、
もっとプロらしいテクニックを書け、、、
なんて声聞こえたところで、今日も逃げるようにサヨナラです。

では、また。 三流PG Ken3でした。



質問や要望、クレームを送る(三流君に連絡する 連絡方法)

質問や要望など連絡方法でお互い確認が取りやすく、便利なのが掲示板なのですが、私の対応のまずさから不定期で荒れてしまい、掲示板は現在封鎖中です。(反省しなきゃ)
感想や質問・要望・苦情など 三流君へメッセージを送る。
時間的余裕のある要望・質問・苦情の場合は、下記のフォームからメッセージを送ることができます。
あなたのお名前(ニックネーム):さん
返信は?: 不用(HP更新を待つ) , E-mail→ アドレス:に返事をもらいたい

(感想や質問・要望・苦情はHPで記事に載せることがあります。)

急ぎで連絡がほしい、そんな時は:[三流君連絡先]に連絡してください。

番外編 愚痴系で書いてた今日の一品 (短いサブ関数など)

2000/05/13 SQL Count関数を使ってみる
2000/05/11 Access97 標準関数Midなどが使えない
2000/05/09 SendObjectのエンコード
2000/05/08 クエリーで〜以外とは
2000/04/27 Imagingコントロールを使ってみた
2000/04/25 Excel97 VBA イベントなど
2000/04/24 Access97で複数のプリンタを切替えて使用
2000/04/20 書式付きエクスポート DoCmd.OutputToで、できます
2000/04/19 Access97でExcel形式へExport時に書式設定を行いたい
2000/04/13 Access97でOutlook97/98とリンクする方法
2000/04/13 VBA Nameステートメント
2000/04/04 Accessでキー取得
2000/04/04 AccessでFile参照ダイアログ?
2000/04/03 縦書用数値変換改良
2000/04/01 Access Err テーブルを消したい
2000/03/31 縦書き数値、どうしてますか?
2000/03/29 VBA 手抜きで、処理後、explorerを開く
2000/03/28 Access --> Word へデータ
2000/03/24 名前一覧Excelの機能で、同じことできました
2000/03/23 Excel97 VBA セルに付けた名前一覧を作成する
2000/03/21 Excel セルに名前付け
2000/02/25 iniFileを読む GetPrivateProfileString
2000/02/15 Excel VBA Rangeオブジェクトとサンプル
2000/02/14 Access97 SizeMode/OLEサイズ で画像調整
2000/02/10 Access97 Pictureプロパティとサンプル
2000/02/09 Access97 集計クエリーで重複値をハジク
2000/02/07 Access97 サブフォームへ値をセット
2000/02/04 Access97 コントロールソース、チョットした使用法
2000/02/01 Access97 フォームフッター
2000/01/18 Access97 now()関数で有効期限処理、、、

←パソコンの技術系の書籍を探しているなら コンピュータ関連の出版社33社(アスキー、インプレス等)が共同運営するコンピュータの本・専門店 種類が豊富で探し易い※在庫ありが48時間以内発送


[三流君(TOP)]へ戻る。