2009-04-30 18 views
4

データベースからデータを抽出するWord 2003レポート生成アプリケーションを開発しました。VBAアプリケーションは、英語版とフランス語版のWindows/Wordで正しいビルトインスタイルを使用できます

ほとんどの組織で英語版のWindowsとOfficeが使用されています。しかし、フランスのオフィスの多くのユーザーはローカルバージョンを使用しています。 Wordの組み込み見出しスタイル見出し(1-9)のいずれかを使用すると、フランス語版はTitre(1-9)が必要です。私の現在のソリューションで

、ユーザーがフォームのオプションを設定し、VBAは次の処理を行います。

Dim HeadingStyle as String 
Dim HeadingLevel as Integer 


If ChooseReportFrm.FrenchOpt.Value = True Then 
HeadingStyle = "Titre " 
Else 
HeadingStyle = "Heading " 
End If 
... 

Call InsertText(HeadingStyle & CStr(HeadingLevel)) 

私は、このプロセスは、自動およびユーザーに対して完全に透過したいと思います。私は、列挙定数のような正しいスタイルを設定する場所に依存しない方法を探していました。誰かがより洗練されたソリューションのためのアイデアを持っていますか?

答えて

2

WdBuiltinStyle Enumerationをご覧ください。

スタイルを割り当てる場合、あなたは(あなたが今やっているようだ何である)自分の local nameによってそうすることができますが、あなたはまた、トリックを行うだろう WdBuiltinStyle.wdStyleHeading1Styleプロパティを設定するあなたのケースでは、列挙値のいずれかを使用することができます

Dim para As Paragraph 
Set para = ActiveDocument.Paragraphs(1) 

para.Style = WdBuiltinStyle.wdStyleHeading1 
+0

良い解決策。私は以前にどうやってこのようなことが起こったのか分かりません。ありがとう – JonnyGold

関連する問題