【環境】
Windows 10 Enterprise(20H2)
offiece365 ※最新バージョンと思われます。
ボールドテキスト
【質問】
手動で設定したoutlookの分類項目をエクスポートし、別環境にインポートしたいと思います。
別環境は移行元と同一環境です。
参考になるページがあったので、記載されたスクリプトを実行しました。
インポートはうまく行ったので、エクスポートを試してみると、
以下箇所でエラーとなります。
olkApp.Session.Categories.Add arrField(2), arrField(0), arrField(1)
「プロシージャの呼び出し、または引数が不正です。」
引数は正しく値が入ってることは確認しているのですが、原因がわかりません。
エラー原因についてご教示頂けると幸いです。
エラーの処理はインポートで行われるものですが、現象はインポートの際に発生しているということでよいでしょうか?
その場合、エクスポートしたファイルの内容はどうなっていますでしょうか?
分類項目に含まれる文字列に起因してエラーが発生している可能性があります。
インポート時にエラーが発生します。
エクスポートしたファイルは
9;0;関西
みたいな形で;区切りで編集されています。
参考になるページ
のコードを見ると、
olkApp.Session.Categories.Add arrField(2), arrField(0), arrField(1)
If Err.Number <> 0 Then ' エラーが発生した場合は既存のものがあるのでそれを上書き
Set objCategory = olkApp.Session.Categories.Item(arrField(2))
objCategory.Color = arrField(0)
objCategory.ShortcutKey = arrField(1)
End If
単純に、Item(arrField(2)) 同じ名前のITEMを分類に登録しているだけとか?無いですよね。
参考ページではエラーのアト、上書き処理で対応しているみたいですが。
(※ご自身のコードをUPすると、On Error Resume Next が無いとか・・・)
1.On Error Resume Next 書いてますか?
エラーのデータ
9;0;関西
大丈夫そうですね・・・、
2.標準の分類がエラーを起こしている?
エクスポート、書き出しのコードを見ると、
For Each objCategory In olkApp.Session.Categories
stmFile.WriteLine objCategory.Color & ";" & objCategory.ShortcutKey & ";" & objCategory.Name
Next
でファイルに吐き出しているときに、
オリジナルで追加した分類 9;0;関西
と
元々入っていた、分類 赤、分類 青、などのデータもエクスポートするので、
それをインポートするときに重複エラー?なのでは?
なんて、想像・妄想してみました。
現在のコードを追記されると、適切なアドバイスがもらえると思ったり
(↑でないと、想像で私みたいに的外れなコメントを書いてしまったり。)
ken3memo 様
ご回答ありがとうございます。
ご指摘どおり、単純なミスに気が付きました。
On Error Resume Nextの記載をコピペできていませんでした。
こちらを追加すると、無事に動作しました。ありがとうございます。

回答1件
あなたの回答
tips
プレビュー