[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『セル内の一部を下付きに置換』(なな)
セル内に「]W96」や「V96」「OD96」という記述があるのですが 96の部分がそのままと下付きとが混在しているので、そこの部分だけ下付きに置換したいと考えています。
検索する文字列:96(書式セットなし)→置換する文字列:96(下付き) で置換したところ、セル全体が下付きに置換されてしまいます。 セル内の一部だけを書式込みで置換することは可能でしょうか?
Windows2000、Excel2002
マクロでやってみました。 下付きに置き返したいセルを選択して下記のコードを実行してみてください。 Option Explicit Sub 下付き() Dim MyRange As Range Dim strSearch As String Dim intPos As Integer, intLen As Integer strSearch = Application.InputBox(prompt:="検索する文字列を入力してください。", Type:=2) intLen = Len(strSearch) For Each MyRange In Selection intPos = InStr(1, MyRange.Text, strSearch, vbTextCompare) If intPos > 0 Then With MyRange.Characters(Start:=intPos, _ Length:=intLen).Font .Subscript = True End With End If Next MyRange End Sub
(川野鮎太郎)
もしも同じセルに置き換え対象が2つ以上あるようなケースの場合は以下をお試しください。 Sub 下付き() Dim MyRange As Range Dim strSearch As String Dim i As Integer, intPos As Integer, intLen As Integer strSearch = Application.InputBox(prompt:="検索する文字列を入力してください。", Type:=2) intLen = Len(strSearch) For Each MyRange In Selection For i = 1 To Len(MyRange.Text) intPos = InStr(intPos + 1, MyRange.Text, strSearch, vbTextCompare) If intPos = 0 Then Exit For With MyRange.Characters(Start:=intPos, _ Length:=intLen).Font .Subscript = True End With Next i Next MyRange End Sub
(川野鮎太郎)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.