四角に文字を入れて中にテキストを入れて
センタリングしてそれを一つのオブジェクトとしたいです。
ーーーーーーー
| 試 験 |
ーーーーーーー
このような感じで作成して任意の場所に張り付けたいです。
明朝体 20
枠、高さ9.99 幅39.99
左から90 上から20の位置
' 配置関係の書式を設定
Selection.Font.Name = "MS 明朝"
Selection.Font.Size = 20
Selection.Font.Grow
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
Selection.Font.Borders(1).LineStyle = wdLineStyleNone
Selection.Shading.ForegroundPatternColor = wdColorAutomatic
Selection.Shading.BackgroundPatternColor = wdColorAutomatic
Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 0, 0)
Set PIC =ActiveDocument.Shapes.AddShape msoShapeRectangle, 100, 100, 400, 400
with
.RelativeHorizontalPosition = _
wdRelativeHorizontalPositionPage
.RelativeVerticalPosition = _
wdRelativeVerticalPositionPage
.Left = wdShapeCenter
.Top = wdShapeCenter
'.Left = 90
'.Top = 20
End With
よろしくお願いします
No.4ベストアンサー
- 回答日時:
こんにちは
>これが1回でうまく枠に文字が入る方法はわかりませんか?
TextFrame.TextRangeでText設定をします。
ステップ実行などでテキストの変化が分かるように初めに入れてみました
Dim PIC As Shape
Set PIC = ActiveDocument.Shapes.AddShape(msoShapeRectangle, -176.2, -67.95, 100, 46.5)
With PIC
.Fill.ForeColor.RGB = RGB(255, 255, 255)
'.RelativeHorizontalPosition = wdRelativeHorizontalPositionPage
'.RelativeVerticalPosition = wdRelativeVerticalPositionParagraph
.Left = 90
.Top = 20
With .Line
.Weight = 2.25
.ForeColor.RGB = vbRed
End With
With .TextFrame.TextRange
.Text = "試 験"
.Font.Borders(1).LineStyle = wdLineStyleNone
.ParagraphFormat.Alignment = wdAlignParagraphCenter
'.Shading.ForegroundPatternColor = wdColorAutomatic
'.Shading.BackgroundPatternColor = wdColorAutomatic
.Font.Name = "MS 明朝"
.Font.Grow
.Font.Size = 20
.Font.ColorIndex = wdRed
End With
End With
End Sub
No.3
- 回答日時:
#2です 補足します
>枠、高さ9.99 幅39.99
>左から90 上から20の位置
Set PIC = ActiveDocument.Shapes.AddShape(msoShapeRectangle, 100, 100, 400, 400)
や
.Left = wdShapeCenter
.Top = wdShapeCenter
'.Left = 90
'.Top = 20
でポイントで設定します。
>左から90 上から20の位置 についてですが
.Left = wdShapeCenter
.Top = wdShapeCenter
中央に設定してしまっていますので上記を削除するか適正に設定します
>枠、高さ9.99 幅39.99
これミリ?ポイント?
良く分からないので 実際のドキュメントで確認する方法です
手作業でドキュメント上にShapeを作成して、
マクロで出力したい 位置、サイズで作成します。
(ドキュメント上にはShapeは1つだけ作り)下記を実行して
位置、サイズの情報を得てください。
WordShape情報取得コード
Sub sample()
With ActiveDocument.Shapes(1)
Debug.Print "左端から" & .Left & "ポイント" & vbCrLf & _
"上端から" & .Top & "ポイント" & vbCrLf & _
"幅は" & .Width & "ポイント" & vbCrLf & _
"高さは" & .Height & "ポイント"
End With
End Sub
*Debug.Printが良く分からないのであれば、Debug.PrintをMsgBox
に変更してください。
その情報を基に該当箇所
AddShape(msoShapeRectangle,Left,Top,Width,Height)
AddShape(msoShapeRectangle, 100, 100, 400, 400)
又は
.Left =
.Top =
.Left =
.Top =
で設定してください。
回答ありがとうございます。
四角のイメージはあっており、大きさ等変更できることを確認しました。
1回目ボタンクリック後に枠が表示、しかしその枠に文字が入らず。
枠を選択し、もう1度ボタンを選択するとその中に文字が入り、追加でもう1度枠が作成
これが1回でうまく枠に文字が入る方法はわかりませんか?
Dim PIC As Shape
Set PIC = ActiveDocument.Shapes.AddShape(msoShapeRectangle, -176.2, -67.95, 100, 46.5)
Selection.TypeText Text:="試 験"
With PIC
.Fill.ForeColor.RGB = RGB(255, 255, 255)
.RelativeHorizontalPosition = _
wd・・・
.RelativeVerticalPosition = _
wd・・・
.Left = 90
.Top = 20
With .Line
.Weight = 2.25
.ForeColor.RGB = vbRed
End With
With .TextFrame.TextRange
.Font.Borders(1).LineStyle = wdLineStyleNone
.ParagraphFormat.Alignment = wdAlignParagraphCenter
'.Shading.ForegroundPatternColor = wdColorAutomatic
'.Shading.BackgroundPatternColor = wdColorAutomatic
.Font.Name = "MS 明朝"
.Font.Grow
.Font.Size = 20
.Font.ColorIndex = wdRed
End With
End With
End Sub
文字数制限のため一部省略してます。
No.2
- 回答日時:
こんにちは
良く分かりませんが、このような事をしたいと言う事?
Dim PIC As Shape
Set PIC = ActiveDocument.Shapes.AddShape(msoShapeRectangle, 100, 100, 400, 400)
With PIC
.Fill.ForeColor.RGB = RGB(255, 0, 0)
.RelativeHorizontalPosition = _
wdRelativeHorizontalPositionPage
.RelativeVerticalPosition = _
wdRelativeVerticalPositionPage
.Left = wdShapeCenter
.Top = wdShapeCenter
'.Left = 90
'.Top = 20
With .TextFrame.TextRange
'.Font.Borders(1).LineStyle = wdLineStyleNone
.ParagraphFormat.Alignment = wdAlignParagraphCenter
'.Shading.ForegroundPatternColor = wdColorAutomatic
'.Shading.BackgroundPatternColor = wdColorAutomatic
.Font.Name = "MS 明朝"
.Font.Grow
.Font.Size = 20
End With
End With
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) 複数セルに〇印をつけるマクロ 4 2022/09/07 05:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Visual Basic(VBA) 【VBA】写真の縦横比を変えずに貼り付ける 5 2023/06/13 11:42
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【ワード】図の書式設定-線と...
-
点線の円(○・丸)
-
パワーポイントの縦書きテキス...
-
画像の貼り付けができない
-
急いでます!「~」の打ち方
-
Wordのオブジェクト等がずれる
-
Microsoft Word で縦書きの仕方...
-
Wordで数学で使う○の2乗を表記...
-
パワーポイントでジグザグの矢...
-
パワーポイントでの組文字のやり方
-
パワポで「図の書式設定」が出...
-
パワーポイントのコメントの色...
-
フッターの位置を回転したい。
-
wordの書式が出てきません・・...
-
EXCELでスクリーンショットの大...
-
エクセルで図形を、均等に並べ...
-
エクセル2003のテキストボ...
-
パワポで曲がった両矢印の簡単...
-
パワーポイントで作図した図を...
-
Excelの画面上に上書き保存のア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【ワード】図の書式設定-線と...
-
点線の円(○・丸)
-
急いでます!「~」の打ち方
-
フッターの位置を回転したい。
-
パワーポイントの縦書きテキス...
-
wordの書式が出てきません・・...
-
画像の貼り付けができない
-
パワーポイントのコメントの色...
-
Kingsoft writer 2010について
-
パワーポイントでジグザグの矢...
-
Wordで数学で使う○の2乗を表記...
-
パワーポイントでの組文字のやり方
-
EXCELでスクリーンショットの大...
-
パワーポイントで2つの円の重...
-
(ワード2000)別ファイル...
-
Wordのオブジェクト等がずれる
-
最高裁判所から通達がある Word...
-
ワードの‘図の書式設定’の変更...
-
エクセルで図形を、均等に並べ...
-
PowerPoint 引き出し線の変更...
おすすめ情報