• ベストアンサー

文字列変換マクロ

小数点以下5桁(B列)をC列に文字列として変換したいです。 (B列は3.62%入力で表示形式をパーセンテージの小数点以下5桁で表示) データ量が多いためVBA作成希望です。どなたか教示お願いします。

この投稿のマルチメディアは削除されているためご覧いただけません。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.3

以下のような感じでしょうか。C列は表示形式を文字列にしてください。 Sub Example() Dim i As Long With Sheets("Sheet1") For i = 2 To .Cells(Rows.Count, "B").End(xlUp).Row .Cells(i, "C").Value = Left(Split(.Cells(i, "B").Text, ".")(1), 5) Next End With End Sub

その他の回答 (3)

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.4

No3の補足です。 .Cells(i, "C").Value = "'" & Left(Split(.Cells(i, "B").Text, ".")(1), 5) にすると表示形式は標準のまま文字列になりますが、データの先頭にシングルクォーテーションがつきます。

回答No.2

マクロを組んでいる時間より式をツツーッが速いと思う。 Public Function CutStr(ByVal Text As String, _             ByVal Separator As String, _             ByVal N As Integer) As String   Dim strDatas() As String      If N > 0 Then     strDatas = Split("" & Separator & Text, Separator, , 0)     CutStr = strDatas(N * Abs(N <= UBound(strDatas)))   End If End Function

blackcat77
質問者

お礼

アドバイスありがとうございました。

回答No.1

Format関数を使うのが一般的ですね。 https://www.sejuku.net/blog/33422

関連するQ&A