前提・実現したいこと
Microsoft Wordのマクロ(VBA)にて、特定のタイミングで出て来る英文字を斜字にしたい。
具体的には、当方は大学で心理学を学んでいるのだが、実験や調査レポートにて、統計量の英文字(p値やt値、SDなど。)を記述する際には、イタリックにせねばならないのですが、その斜字にする処理を自動化したいのです。
ただ、単純に、
Sub AutoItalic() With Selection.Find .Text = "p" Do While .Execute Selection.ItalicRun Loop End With End Sub
という風に記述しても、引用文献などでpを含む人名なども勝手に斜字になってしまいます。
レポートにて統計量を報告しするときには、以下のような書き方をすることが多いです。
2群の平均値の間には統計的に有意な差があった(t(12)=3.3, p<.05)。
なので、統計量を表す英文字が出て来るタイミングを指定して検索させるために、以下のようなコードを書いてみました。
Sub AutoItalic() With Selection.Find .Text = "p<" Do While .Execute Selection.Find .Text = "p" Loop End With End Sub
しかし、
発生している問題・エラーメッセージ
コンパイル エラーです。: プロパティの使い方が正しくありません。
と出てしまい、ループをできません。
質問内容
上記のような、条件(特定の文脈)を指定して検索をさせ、その後ItalicRunの処理をする方法を知りたいです。当方、プログラミング自体初心者なので、あまりよくわかっていませんが、よろしくお願いします。
p値に関してだけでも、サンプルコードを教えていただけたら、その処理をtや他の統計報告量でも同様に処理したいと考えております。
補足情報(FW/ツールのバージョンなど)
。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。