全角英数字を半角英数字に変換する:Excel VBA入門 |
スポンサードリンク | |
Sub zen2han() Dim c As Range Dim i As Integer Dim ansData As Variant For Each c In Selection ansData = "" For i = 1 To Len(c.Value) If Mid(c.Value, i, 1) Like "[0-9]" Then ansData = ansData & StrConv(Mid(c.Value, i, 1), vbNarrow) Else ansData = ansData & Mid(c.Value, i, 1) End If Next i c.Offset(0, 1).Value = ansData Next c End Sub |
Sub zen2han() Dim c As Range Dim i As Integer Dim ansData As Variant For Each c In Selection ansData = "" For i = 1 To Len(c.Value) If Mid(c.Value, i, 1) Like "[0-9]" Or Mid(c.Value, i, 1) Like "−" Then ansData = ansData & StrConv(Mid(c.Value, i, 1), vbNarrow) Else ansData = ansData & Mid(c.Value, i, 1) End If Next i c.Offset(0, 1).Value = ansData Next c End Sub |
【コード例B2】
Sub zen2hanB2() Dim c As Range Dim i As Integer Dim ansData As Variant For Each c In Selection ansData = "" For i = 1 To Len(c.Value) If Mid(c.Value, i, 1) Like "[A-z]" Then ansData = ansData & StrConv(Mid(c.Value, i, 1), vbNarrow) Else ansData = ansData & Mid(c.Value, i, 1) End If Next i c.Offset(0, 1).Value = ansData Next c End Sub |
【コード例C】
Sub zen2han() Dim c As Range Dim i As Integer Dim ansData As Variant For Each c In Selection ansData = "" For i = 1 To Len(c.Value) If Mid(c.Value, i, 1) Like "[A-z]" Or Mid(c.Value, i, 1) Like "[0-9]" Or Mid(c.Value, i, 1) Like "−" Then ansData = ansData & StrConv(Mid(c.Value, i, 1), vbNarrow) Else ansData = ansData & Mid(c.Value, i, 1) End If Next i c.Offset(0, 1).Value = ansData Next c End Sub |
Sub han2zen() Dim c As Range Dim i As Integer Dim rData As Variant, ansData As Variant For Each c In Selection ansData = "" For i = 1 To Len(c.Value) rData = StrConv(c.Value, vbWide) If Mid(rData, i, 1) Like "[A-z]" Or Mid(rData, i, 1) Like "[0-9]" Or Mid(rData, i, 1) Like "−" Then ansData = ansData & StrConv(Mid(rData, i, 1), vbNarrow) Else ansData = ansData & Mid(rData, i, 1) End If Next i c.Offset(0, 1).Value = ansData Next c End Sub |
スポンサードリンク
PageViewCounter
Since2006/2/27