|
こんにちは。
> 質問なのですが、出力ファイルの指定方法と
> ファイル中の文字列置換の方法を教えて頂けないでしょうか?
たとえばofficeUIファイル(D:\Excel.officeUI)が下記のようになっていて、
<mso:customUI xmlns:x1="h_t_tp://schemas.microsoft.com/office/2009/07/customui/macro" xmlns:mso="h_t_tp://schemas.microsoft.com/office/2009/07/customui">
<mso:ribbon>
<mso:qat>
<mso:sharedControls>
<mso:button idQ="x1:Book1_マクロ1_1" visible="true" label="私のマクロ" imageMso="AppointmentColor6" onAction="Book1!マクロ1" />
</mso:sharedControls>
</mso:qat>
</mso:ribbon>
</mso:customUI>
idQ属性の値が「x1:Book1_マクロ1_1」になっているbutton要素のimageMso属性の値を「AppointmentColor10」にして、「D:\Excel2.officeUI」ファイルとして保存したい場合は下記のようになります。
Public Sub Sample()
With CreateObject("Msxml2.DOMDocument")
.async = False
If .Load("D:\Excel.officeUI") Then
.SelectNodes("mso:customUI/mso:ribbon/mso:qat/mso:sharedControls/mso:button[@idQ='x1:Book1_マクロ1_1']").Item(0).setAttribute "imageMso", "AppointmentColor10"
.Save "D:\Excel2.officeUI"
End If
End With
End Sub
実際にはエラー処理等を入れる必要がありますが、大雑把には上記のようになります。
> そのXMLファイルは もともとUnicodeで記述されてるんじゃありませんか?
UTF-8ですね。
上で日本語が問題になっているのはそれが原因だと思われます。
見落としていました。
> リボンのカスタマイズに関しては、きぬよ&あさみ さんのサイトが「権威?」
いやいや(^_^;、
さすがに権威って言うのは言い過ぎですね(笑)
|
|