- 01: 名前:fts投稿日:2004/03/04(木) 17:23
- 教えて下さい!
フォントサイズの変更は出来たのですが、
フォント名の変更ができません(MS Pゴシック→MS ゴシック)
フォント番号を使わずにExcelVBAのようにフォント名”MS ゴシック”での設定は出来ないのでしょうか?
もし出来ないのでしたらMS ゴシックのフォント番号が知りたいのですがなにぶん初心者なもので…
ご教授よろしくお願いしますm(_._)m
- 07: 名前:スキップ投稿日:2004/03/05(金) 08:49
- VBAが可能であれば Document.Fonts(ここにフォント名).ID で取得できませんか?
- 08: 名前:fts投稿日:2004/03/05(金) 09:10
- ありがとうございました。
もう少しいろいろ回避策をやってみます。
- 09: 名前:yoda投稿日:2004/03/05(金) 11:12
- スキップさん、ありがとうございます。
ftsさん、次のマクロを試していただけませんか。
Sub setMincho()
Dim f As Font
For Each f In ThisDocument.Fonts
If f.Name = "MS 明朝" Then
ThisDocument.GestureFormatSheet.CellsSRC(visSectionCharacter, 0, visCharacterFont).FormulaU = f.Index
ThisDocument.GestureFormatSheet.CellsSRC(visSectionCharacter, 0, visCharacterAsianFont).FormulaU = f.Index
End If
Next
End Sub
- 10: 名前:fts投稿日:2004/03/05(金) 13:09
- yodaさん、ありがとうございます。
既存のShapeには、影響ないようです。
ですが、追加したShapeは、MS明朝になているように見えます。
「見えます」というのは、ウィンドウ上の書式設定ツールバーには何もフォント名を表示しないからです。
ツールバーから「MS明朝」を選んでも見た目が変わらないのでMS明朝になっていると思います。
既定のフォントがMS明朝になったようです。
- 11: 名前:yoda投稿日:2004/03/05(金) 15:45
- ......FormulaU = f.Index
となっているところ(2行)を、
......FormulaU = f.ID
として、見たら、いかがでしょうか。
Visio2000では、更に、2行目のvisAsian...は、
消去して、うまくゆくのですが。
- 12: 名前:fts投稿日:2004/03/05(金) 16:06
- FormulaU = f.Index→f.ID
visCharacterAsianFont→この行をコメント化
どちらも試してみましたが、状況はかわらずでした。
新規Shapeには、反映しているようです。
お手間取らせてしまって申し訳ありませんでした。
- 13: 名前:yoda投稿日:2004/03/06(土) 07:52
- ftsさん、すみません。
悪いマクロを書いてしまいました。
以下のように、訂正願います。
Dim I As Long
I = ThisDocument.Fonts("MS 明朝").ID
ThisDocument.GestureFormatSheet.CellsSRC(visSectionCharacter, 0, visCharacterFont).FormulaU = I
ThisDocument.GestureFormatSheet.CellsSRC(visSectionCharacter, 0, visCharacterAsianFont).FormulaU = I
- 14: 名前:fts投稿日:2004/03/08(月) 08:52
- おはようございます。
yodaさんありがとうございます。
試してみましたが、既存のShapeには反映しないようです。
新規で貼り付けたShapeには反映しています。
状況的には変わりなしでしたぁ
- 15: 名前:yoda投稿日:2004/03/08(月) 13:01
- 既存のShapeの文字もすべて、明朝に変えるのなら、
別のマクロが、必要です。
たとえば、
Sub changemincho()
Dim I As Long
Dim shp As Visio.Shape
Dim pg As Visio.Page
I = ThisDocument.Fonts("MS 明朝").ID
For Each pg In ThisDocument.Pages
For Each shp In pg.Shapes
With shp
.CellsSRC(visSectionCharacter, 0, visCharacterFont).FormulaU = I
.CellsSRC(visSectionCharacter, 0, visCharacterAsianFont).FormulaU = I
End With
Next
Next
End Sub
■トップに戻る リロード 全レスを表示
|