No.2ベストアンサー
- 回答日時:
> RangeメソッドはCellに使えないようなので
WordのVBA編集画面のオブジェクトブラウザで確認しますと、
Document.Range メソッド → Start:, End: で範囲を指定できる
Cell.Range プロパティ(メソッドではない)→ Start: End: の範囲指定はできない
事がわかります。ご指摘の通りです。
それで、
Dim 範囲 As Range
Set 範囲 = ThisDocument.Tables(1).Cell(2, 3).Range
Debug.Print 範囲.Start; 範囲.End
などとしてみますと、この Range はセルではなく、
セクションの頭からの位置として、Start, End を持っていることがわかります。
そこで
Set 範囲 = ThisDocument.Tables(1).Cell(2, 3).Range
範囲.End = 範囲.Start + 10
範囲.Start = 範囲.Start + 6 - 1' ★注意★ -1 が必要
範囲.Font.Color = wdColorRed
Debug.Print 範囲.Text
としてみると、うまくいきました
(ここでは太字ではなく赤字にしていますが、おなじことです)
No.1
- 回答日時:
こういうことでしょうか。
文字数が足りなければ、その文字列最後まで選択します。
Sub Test1()
Dim i As Long, j As Long, k As Long
Dim buf As String
Const iSTART As Integer = 5 'スタート
Const iEND As Integer = 10 '終わり
With Tables(1).Cell(1, 2).Range 'セル
.Select
'文字カウント
buf = Selection.Text
For i = iSTART + 1 To Len(buf)
If AscW(Mid(buf, i, 1)) >= 33 Then
k = k + 1
Else
Exit For
End If
Next
If k >= (iEND - iSTART) Then
j = iSTART
ElseIf k > 0 Then
j = k
Else
Exit Sub
End If
Selection.MoveLeft Unit:=wdCharacter, Count:=1
Selection.MoveStart Unit:=wdCharacter, Count:=iSTART
Selection.MoveRight Unit:=wdCharacter, Count:=j, Extend:=wdExtend
Selection.Font.Bold = True
Selection.MoveLeft Unit:=wdCharacter, Count:=1
End With
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) エクセルの数式で教えてください。 1 2023/07/31 15:49
- Excel(エクセル) Excel 、この式はどのように解釈すればいいのでしょうか 4 2023/02/03 08:53
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Excel(エクセル) Excelのセルのコピーについて 4 2022/12/26 15:01
- Visual Basic(VBA) VBA ドロップダウンリストを残して値のみクリア 2 2022/10/27 05:42
- Excel(エクセル) Excelマクロ(VBA)CELL形式とA1形式の使い分け 6 2022/08/27 23:35
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- 英語 The majority of currently available reviews focus 8 2022/08/07 05:55
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
word vbaでword上の表の、任意で選択した複数のセルに同じ文字列を入力したいのですが、可能で
Word(ワード)
-
Word版VBで表の任意の箇所を取得する(Cellメソッド)
Visual Basic(VBA)
-
ワードの表のセル幅をマクロを使って変更したい
Word(ワード)
-
-
4
WORD VBA 表の複数行選択を教えてください
Visual Basic(VBA)
-
5
Word のVBAについて初心者なのですが、質問があります。
Word(ワード)
-
6
WordVBA 置換処理での改行文字の可否
その他(Microsoft Office)
-
7
エクセル VBA シートのコピー
その他(プログラミング・Web制作)
-
8
WORDマクロで特定文字から別文字までを範囲選択したい
Word(ワード)
-
9
エクセルマクロでワードの一ページ目をコピーして新たに二ページを追加して、一ページ目の内容を貼り付ける
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
visual studio でインデントを...
-
エクセル ダブルクリック入力の...
-
エクセル マウスで選択した範...
-
テーブルリンク エクセルの4...
-
セル削除右(又は下)方向にシフト
-
選択範囲の空白セルに0を入れる...
-
EXCEL VBA----離れたセル範囲の...
-
画像を角丸長方形で切り抜きた...
-
EXCEL VBAにて画像処理のアドイ...
-
ペイントでの切り取り
-
エクセルである行以下全部を削...
-
EXCEL VBAで全選択範囲の解除
-
VBAでファイルを開くときにファ...
-
白飛びした(明るい)写真をiPhon...
-
Photoshop で8bit /チャンネル ...
-
「無」と「未」の使い方
-
Excel VBA あるセルでENTERを押...
-
Excel VBAでn行毎に行の選択
-
Excel 行列が選択出来ない
-
PDFを開くとデフォルトで閲覧モ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
visual studio でインデントを...
-
エクセル マウスで選択した範...
-
エクセル ダブルクリック入力の...
-
テーブルリンク エクセルの4...
-
選択範囲の空白セルに0を入れる...
-
EXCEL VBA----離れたセル範囲の...
-
エクセルのマクロで選択範囲の...
-
反転する時の色を変えたいのですが
-
Wordデータの色を反転させたい
-
EXCEL ボリュームゾーンごとの...
-
この画像の上と下の黒い部分を...
-
Cell内の一部を指定する方法(Wo...
-
読み上げ機能について
-
同じ色だけ残して後の部分をモ...
-
EXCEL VBAにて画像処理のアドイ...
-
アドレスを指定して削除できる...
-
【エクセル関数】○○と○○と○○以...
-
VBAを利用し、Excelの指定範囲...
-
エクセルのマクロを教えてくだ...
-
Excelの「範囲」の自動変...
おすすめ情報