私は文字列を持っています:
Range("T4").Value = "Rule 13s voilation"
私は13sの13s
ように書きたい、
つまり、の添え字です。3
s
1
vbaでどのように対処すればよいか提案してください
次のことを試してください。
Range("T4").Value = "Rule 13s voilation"
Range("T4").Characters(Start:=7, Length:=2).Font.Subscript = True
動的な文字列の長さでこれがどのように機能するかはわかりません。
マクロを記録しながら手動で実行してから、結果のコードを確認してください。それはあなたにあなたの答えを与えるでしょう。
クリーンアップされた回答は次のとおりです。
With Range("T4")
.Value = "Rule 13s voilation" ' (sic)
.Characters(Start:=7, Length:=2).Font.Subscript = True
End With
この関数を使用して、2つのセルを1つに連結します。最初のものはテキストであり、2番目のものはコメントへの一連の参照です
Sub setRefWithRemark()
Dim aCellRef, aCellRem, aCelTarget As Range
Dim aRow As Range
For Each aRow In Range("rgtensileRefWithRemark").Rows
Set aCellRef = aRow.Cells(1, 1)
Set aCellRem = aRow.Cells(1, 12)
Set aCellTarget = aRow.Cells(1, 17)
If aCellRef.Text <> "" Then
With aCellTarget
.value = aCellRef.Text & cTextSeparator & aCellRem.Text ' (sic)
.Characters(Start:=Len(aCellRef.Text) + 2, Length:=Len(aCellRem.Text)).Font.Superscript = True
End With
End If
Next
End Sub