新しいフォルダを作成するか、既存のフォルダを使用するためにvbaを使用して電子メールの件名を読む明確な方法を探しています電子メールを移動する。私はいくつかのvbaの例を見てきましたが、Outlookでvbaエディタで見つかった新しいメールメソッドに対処していません。件名のテキストに基づいて必要に応じてフォルダを作成するためのOutlookルールを作成する
4
A
答えて
1
this articleをチェックしてください。具体的には方法2と3を参照してください。正しい方向に向いていると思います。
0
私はこのためのコードを書いています。私のマクロは電子メールで特定の文字列を検索した後、そのすべてを取得し、その名前を使ってフォルダを作成します。
これらの機能を呼び出して)新しいフォルダ 4にMailItemを移動します)、それは 3ない場合は、それを作成します)フォルダがすでに 2を存在するかどうかを確認し 1):あなたはにいくつかの関数が必要になります注:これの多くはハードコードされており、必要に応じてユーザー入力を行うように変更することができます。また、サブフォルダでは機能しません(カスタマイズする必要があります)。
1)フォルダをチェックしてください:
Function CheckForFolder(strFolder As String) As Boolean
Dim olApp As Outlook.Application
Dim olNS As Outlook.NameSpace
Dim olInbox As Outlook.MAPIFolder
Dim FolderToCheck As Outlook.MAPIFolder
Set olApp = Outlook.Application
Set olNS = olApp.GetNamespace("MAPI")
Set olInbox = olNS.GetDefaultFolder(olFolderInbox)
On Error Resume Next
Set FolderToCheck = olInbox.Folders(strFolder)
On Error GoTo 0
If Not FolderToCheck Is Nothing Then
CheckForFolder = True
End If
ExitProc:
Set FolderToCheck = Nothing
Set olInbox = Nothing
Set olNS = Nothing
Set olApp = Nothing
End Function
2)を作成します。
Function CreateSubFolder(strFolder As String) As Outlook.MAPIFolder
Dim olApp As Outlook.Application
Dim olNS As Outlook.NameSpace
Dim olInbox As Outlook.MAPIFolder
Set olApp = Outlook.Application
Set olNS = olApp.GetNamespace("MAPI")
Set olInbox = olNS.GetDefaultFolder(olFolderInbox)
Set CreateSubFolder = olInbox.Folders.Add(strFolder)
ExitProc:
Set olInbox = Nothing
Set olNS = Nothing
Set olApp = Nothing
End Function
3)は検索して移動:
Function SearchAndMove(lookFor As String)
Dim olApp As Outlook.Application
Dim olNS As Outlook.NameSpace
Dim olInbox As Outlook.MAPIFolder
Dim FolderToCheck As Outlook.MAPIFolder
Dim myItem As Object
Dim MyFolder As Outlook.MAPIFolder
Dim lookIn As String
Dim newName As String
Dim location As Integer
Set olApp = Outlook.Application
Set olNS = olApp.GetNamespace("MAPI")
Set olInbox = olNS.GetDefaultFolder(olFolderInbox)
For Each myItem In olInbox.Items
lookIn = myItem.Subject
If InStr(lookIn, lookFor) Then
location = InStr(lookIn, lookFor)
newName = Mid(lookIn, location)
If CheckForFolder(newName) = False Then
Set MyFolder = CreateSubFolder(newName)
myItem.Move MyFolder
Else
Set MyFolder = olInbox.Folders(newName)
myItem.Move MyFolder
End If
End If
Next myItem
End Function
4)コール機能:
Sub myMacro()
Dim str as String
str = "Thing to look for in the subjectline"
SearchAndMove (str)
End Sub
関連する問題
- 1. フォルダ内のファイルに基づいて変数を作成する
- 2. ファイルパスに基づいて複数のフォルダを作成する
- 3. テキスト文字列に基づいて一連のフォルダを作成する
- 4. 登録時にIDに基づいてフォルダを作成する
- 5. 条件の値に基づいて列を作成するR
- 6. は、行の条件に基づいて、列を作成する
- 7. 特定の条件に基づいてグラフを作成する
- 8. パンダスの条件に基づいてNAを作成する
- 9. mac OS - ファイル名の一部に基づいてフォルダを作成する
- 10. Pythonでテキストファイルの名前に基づいてフォルダを作成する
- 11. 条件に基づいてPython辞書を作成する
- 12. 条件に基づいて変数を作成する
- 13. djangoのモデルフィールド名に基づいてパーミッションを作成する
- 14. Vimのファイルタイプに基づいてフォルダを作成します
- 15. テキストファイルに基づいてテキストファイルのディレクトリを作成するバッチファイルが必要です
- 16. angs js bootstrap datetimepicker必要に応じて作成したい
- 17. LLVMアーキテクチャに基づいてPythonのフロントエンドを作成するために必要なものは何ですか?
- 18. セットの要素に基づいてブートストラップアコーディオンリピートを作成する
- 19. Ember Appに基づいてAPIを作成/作成する
- 20. 対数要件に基づいてサイジング式を作成する方法
- 21. パラメータ名に基づいてステージを作成する
- 22. ファイル名とディレクトリに基づいてテキストファイルを作成する - バッチ
- 23. GUID列名に基づいて動的ItemTemplateを作成する
- 24. 人の名前に基づいた提案を作成する
- 25. Outlookの特定のフォルダを検索し、電子メールをそのフォルダに移動するためのルールを作成するVBScriptを作成します。
- 26. Pythonは条件に基づいてサブリストを作成します
- 27. スクリプトは条件に基づいてリストを作成します
- 28. 必要に応じてディレクトリを作成し、ある場所にファイルを作成するJavaの方法?
- 29. ファイル名の6番目の数字に基づいてフォルダを作成し、フォルダを作成してそのフォルダにファイルを移動します
- 30. フィルタ条件を作成:2つのテーブルに基づいて
あなたは関数を作成しないことでこれを10倍単純化することができます...まあまあです。 – Jeff