Excel VBA 質問スレッド №2082 (未解決)
取引先名転写
投稿者 : cm 投稿日時 : 2025/02/14(Fri) 16:24:07 OS : Windows 11 EXCEL : Excel 2021
OutlookにきたメールからExcelで見積を作る際、見積書の〇〇御中への手入力を自動化したいです。
formからきたメールは「・貴社名:」のあとの文字を読み取ることで成功したのですが、それ以外はうまくいきません。
やりとりの途中から取引先名を取得かつ、取引先が民間企業でも
株式会社〇〇、〇〇株式会社、(株)〇〇、〇〇 担当者と多岐に渡り反映がおかしくなってしまいます。
→株式会社御中、株式会社自社、株式会社めあど、コンパイルエラーなど
また大学や研究機関も取引先のため、それらを含む文字列を読み取るようにしてもうまくいきません。
OutlookにきたメールからExcelで見積を作る際、見積書の〇〇御中への手入力を自動化したいです。
formからきたメールは「・貴社名:」のあとの文字を読み取ることで成功したのですが、それ以外はうまくいきません。
やりとりの途中から取引先名を取得かつ、取引先が民間企業でも
株式会社〇〇、〇〇株式会社、(株)〇〇、〇〇 担当者と多岐に渡り反映がおかしくなってしまいます。
→株式会社御中、株式会社自社、株式会社めあど、コンパイルエラーなど
また大学や研究機関も取引先のため、それらを含む文字列を読み取るようにしてもうまくいきません。
スポンサーリンク
[返信 1] Re : 取引先名転写
投稿者 : 匿名 投稿日時 : 2025/02/21(Fri) 12:40:28
「コンパイルエラー」は構文エラーなので、コードの書き方の問題です。
「反映がおかしくなってしまいます。」
「うまくいきません。」
のような曖昧な内容では、アドバイスのしようがないので、
回答がつかないのではないでしょうか?
コンピュータ(Excelなど)を使って
「自動化」
をする場合、一番初めに考えることは、
「標準化」或いは、「繰り返し処理化」
です。
つまり、Eメールのフォーマットを作るところからが
スタートだと思います。
よくありますよね。Webで氏名、住所などを入力するフォームが…
あれは、決まったところに、決まったものが入力されるので、
自動(人間の手を使わない)で、メールの返信などが可能なのです。
コンピュータは臨機応変が苦手です。
もちろんIF文でコントロールできますが、
標準(決まりごとがある)状態にする事が重要です。
例えば必ず「貴社名:」という文字の後を見積もりの宛先とするなどです。
「やりとりの途中から取引先名を取得」
のように曖昧なものについては、
対応のしようがありません。
例えば、Excelで「見積提出リスト」のような表を作成しておき、
1社(1行)ずつOutlookの本文を検索していく
ということは、可能かもしれませんが、
この時にも、本文には「1社以上の社名が書かれていない事」
のような決まりごとが必要となります。
(本文に2社以上の「なんちゃら株式会社」のような文字があれば
どちらを見積書の宛先にするかコンピュータは判断できない
人間は臨機応変が可能なので、判断できているだけ)
また、社名には特殊文字が使われることもあります。
特殊文字は、OSやPCの環境によって文字化けなどにつながることもあります。
VBAで「AI」のような機能をつくるのであれば、
1. Outlookできたメール本文を細かく分けてデータベースとして保存するプログラムを作成、
2. 1で保存されたデータの中から人間が社名を選択する(はじめのうちは手作業)
3. 2を集計してコンピュータに正しい社名と思わしきものを抽出させるプログラムを作成
結果、1と2のデータが多くなれば、社名を「自動で拾える」確率が上がる
という事は可能だと思いますが、プログラム製作のボリュームが
相当大きいものになると思われます。
「コンパイルエラー」は構文エラーなので、コードの書き方の問題です。
「反映がおかしくなってしまいます。」
「うまくいきません。」
のような曖昧な内容では、アドバイスのしようがないので、
回答がつかないのではないでしょうか?
コンピュータ(Excelなど)を使って
「自動化」
をする場合、一番初めに考えることは、
「標準化」或いは、「繰り返し処理化」
です。
つまり、Eメールのフォーマットを作るところからが
スタートだと思います。
よくありますよね。Webで氏名、住所などを入力するフォームが…
あれは、決まったところに、決まったものが入力されるので、
自動(人間の手を使わない)で、メールの返信などが可能なのです。
コンピュータは臨機応変が苦手です。
もちろんIF文でコントロールできますが、
標準(決まりごとがある)状態にする事が重要です。
例えば必ず「貴社名:」という文字の後を見積もりの宛先とするなどです。
「やりとりの途中から取引先名を取得」
のように曖昧なものについては、
対応のしようがありません。
例えば、Excelで「見積提出リスト」のような表を作成しておき、
1社(1行)ずつOutlookの本文を検索していく
ということは、可能かもしれませんが、
この時にも、本文には「1社以上の社名が書かれていない事」
のような決まりごとが必要となります。
(本文に2社以上の「なんちゃら株式会社」のような文字があれば
どちらを見積書の宛先にするかコンピュータは判断できない
人間は臨機応変が可能なので、判断できているだけ)
また、社名には特殊文字が使われることもあります。
特殊文字は、OSやPCの環境によって文字化けなどにつながることもあります。
VBAで「AI」のような機能をつくるのであれば、
1. Outlookできたメール本文を細かく分けてデータベースとして保存するプログラムを作成、
2. 1で保存されたデータの中から人間が社名を選択する(はじめのうちは手作業)
3. 2を集計してコンピュータに正しい社名と思わしきものを抽出させるプログラムを作成
結果、1と2のデータが多くなれば、社名を「自動で拾える」確率が上がる
という事は可能だと思いますが、プログラム製作のボリュームが
相当大きいものになると思われます。
当掲示板について
- Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
- 記事内ではHTMLのタグは使用できません。
- 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
- Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
- Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
( 処理日時 : 2025-07-05 18:33:18 )