ms access
メール本文からテーブル/データを取得し、でコマンドを実行する必要があるプロジェクトに取り組んでいSAP
ます。SAP部分は管理できますが、メール本文から情報を取得する方法が問題です。アクセスでメールボックスをリンクしようとしましたが、すべてのメール本文テキストが表示されますが、特定のコンテンツのみが必要です。例
Hello,
Please supplement budget
WBS Amt
N.10002077.001 1
上から必要なのは「N.10002077.001」と「1」だけですが、テーブルでのみその情報を取得する方法が問題ですか?
さらに、メールで受け取るのは2列のテーブルですが、accessはそれを単純なテキストとしてインポートします。
あいまいすぎるため、質問に明確な答えを出すことは不可能ですが、始めることは可能です。
私のこの答えを見てください:https://stackoverflow.com/a/12146315/973283。スクリーンショットを表示しても、VBAマクロで本体がどのように見えるかについてほとんど説明されていないことをOPが理解していなかった以外は、この質問は関係ありません。答えには、選択したプロパティを受信トレイ内のすべての電子メールからExcelワークシートにコピーするマクロが含まれています。これにより、VBAマクロに対して電子メールの本文がどのように見えるかを確認できます。
データを抽出したいメールをどのように特定しますか?2つの簡単な選択肢は次のとおりです。
上記の回答はテクニック1を示しています。テクニック2を示す回答はたくさんありますが、必要に応じてマクロの例を追加できます。
電子メールには通常、Html本文とテキスト本文があります。電子メールにHtml本文がある場合、それはユーザーに表示されるものです。マクロはどちらかまたは両方にアクセスできます。スクリーンショットはテキスト本文のように見えますが、見た目は誤解を招く可能性があります。テキスト本文の場合、電子メールにはHTML本文がありません。
テキスト本文の場合、本文のレイアウトはおそらく次のようになります。
Hello,{cr}{lf}
Please supplement budget{cr}{lf}
WBS{tab}{tab}{tab}{tab}{tab}Amt{cr}{lf}
N.10002077.001{tab}{tab}1{cr}{lf}
これは、送信者が可変数のタブを使用して列を並べていることを前提としています。
Split
onvbCr & vbLf
を使用して、文字列本体を配列エントリごとに1行の文字列の配列に変換できます。「WBS」で始まる行までの行を破棄してから、各行を任意の署名まで処理します。Split
各行がオンになっていvbTab
て、残りが空白の値を持つ2つのエントリが見つかると予想されます。
上記のヒントでどこまで到達できるかを確認し、さらに情報が必要な場合は答えを明確にしてください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加