いつもお世話になっております。
この度、指定した文字を始点にスペースまで下線を引く
VBAについてご教示いただきたく質問させていただきました。
添付した画像を例としますと、セル内のみかんを始点にスペースまで
めろんを始点にスペースまでに下線を引きたいと思います。
マクロの記録を行ったところ
Sub Macro1()
'
' Macro1 Macro
Range("C3").Select
ActiveCell.FormulaR1C1 = "りんご みかん0120-1234-5678 めろん03-1234-5678 なし"
With ActiveCell.Characters(Start:=1, Length:=4).Font
.Name = "游ゴシック"
.FontStyle = "標準"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
With ActiveCell.Characters(Start:=5, Length:=17).Font
.Name = "游ゴシック"
.FontStyle = "標準"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleSingle
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
With ActiveCell.Characters(Start:=22, Length:=1).Font
.Name = "游ゴシック"
.FontStyle = "標準"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
With ActiveCell.Characters(Start:=23, Length:=15).Font
.Name = "游ゴシック"
.FontStyle = "標準"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleSingle
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
Range("A1").Select
End Sub
となりました。
Characters(Start:=1, Length:=4)
ここの記述が重要だと思うのですが、
ここからどの様な形に組み込むのかのご教示をお願いします。
どうぞよろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
質問文をそのまま利用させて頂いたので。
>With Range("C3")
>.Value = "りんご みかん0120-1234-5678 めろん03-1234-5678 なし"
>こちらの構文もセルの内容に合わせ変えなくてはならないのでしょうか?
With Range("C3")
' .Value = "りんご みかん0120-1234-5678 めろん03-1234-5678 なし" ←この行は削除しても構いません。
' 既にデータが入力されているのであれば。
If myReg.Test(.Value) Then
No.2
- 回答日時:
一例です。
Sub megu()
Dim myReg As Object
Dim m
Set myReg = CreateObject("VBScript.RegExp")
myReg.Pattern = "(みかん|めろん)\S+"
myReg.Global = True
With Range("C3")
.Value = "りんご みかん0120-1234-5678 めろん03-1234-5678 なし"
If myReg.Test(.Value) Then
For Each m In myReg.Execute(.Value)
With .Characters(Start:=m.Firstindex + 1, Length:=m.Length).Font
.Underline = xlUnderlineStyleSingle
End With
Next
End If
End With
End Sub
めぐみんさん、回答ありがとうございます。
こちらのVBAで「みかん」と「めろん」を始点に
スペースまでに下線を引く処理ができました。
ありがとうございます。
重ねて質問なのですが、例えばC3の内容にりんごとなしの
入力ではなく、異なる文字データが入力されている場合は
With Range("C3")
.Value = "りんご みかん0120-1234-5678 めろん03-1234-5678 なし"
こちらの構文もセルの内容に合わせ変えなくてはならないのでしょうか?
理想とします処理は下線を引く処理だけにしたいと思っております。
よろしくお願いいたします。
No.1
- 回答日時:
>指定した文字を始点にスペースまで下線を引く
1.指定とはどのようにして与える予定?
2.下線さえ引ければ良いと言う事?
3.スペースまでとあるけど『その手前』になるのかな?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルマクロで教えてください 2 2022/05/04 09:07
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Visual Basic(VBA) マクロを短くする 1 2023/01/15 00:11
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
改行されたデータをIEに貼り付...
-
ASP.NET TextBox 入力制限
-
ASCII文字列以外を検出する正規...
-
半角スペースを含む文字列を変...
-
ホームページ制作でコピーライ...
-
C#のシリアル通信プログラムで...
-
JavaScriptの引数に空白
-
氏名の入力チェックに全角スペ...
-
Eclipseの空白が変な...
-
ボタンコントロールのTEXT...
-
超初心者です。「順次実行」練...
-
ソースコードの改行文字は何に...
-
VisualStudio2005のテキストエ...
-
php でtabを空白に変換して表示...
-
テキストエリア内の改行禁止
-
XMLを作成してもタグしか表示さ...
-
プルダウンメニューの開く方向...
-
GoogleChromeでレイアウトが左...
-
キーフレーム
-
H1タグに改行の<br>を使う
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBA 見本通りに...
-
ASP.NET TextBox 入力制限
-
ASCII文字列以外を検出する正規...
-
Pythonの勉強を始めました。バ...
-
半角スペースを含む文字列を変...
-
php でtabを空白に変換して表示...
-
JavascriptでIMEのON,OFF制御
-
ホームページ制作でコピーライ...
-
stray '\\240' in programのエ...
-
氏名の入力チェックに全角スペ...
-
ソースコードの改行文字は何に...
-
ボタンコントロールのTEXT...
-
入力されたテキストが、全角か...
-
Eclipseの空白が変な...
-
指定した文字を始点にスペース...
-
C#のシリアル通信プログラムで...
-
Firefoxでのテキストエリアに入...
-
JSONパース時に改行があるとエ...
-
JSで全角英数記号を半角英数記...
-
カラムの末尾にスペースが入る
おすすめ情報