Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


50281 / 76732 ←次へ | 前へ→

【31343】Re:連続したカンマを取り除きたい
回答  かみちゃん  - 05/11/18(金) 0:16 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>エクセルで文字列"AA,BB,RR,,,,AA,BB,CC,DD,,,QQ,DD,FF”のデータ
>があるとしてこれの余分なカンマをとって、CSVとして扱いたいのですが
>
>strTEXTDATA=Replace(strTEXTDATA,",,",",")
>
>ではできないようです。他の方法ありますか?

",,"を","に変えるのはできるのですが、このままでは、
",,,"という文字列だった場合、変換後が",,"になってしまいます。

そこで、以下のようにすれば、できると思います。

Sub Macro1()
 Dim strTEXTDATA As String, strTEXTDATANEW As String
 Dim i As Long
 
 strTEXTDATA = "AA,BB,RR,,,,AA,BB,CC,DD,,,QQ,DD,FF"
 strTEXTDATANEW = ""
 For i = 0 To UBound(Split(strTEXTDATA, ","))
  If Split(strTEXTDATA, ",")(i) <> "" Then
   If strTEXTDATANEW = "" Then
    strTEXTDATANEW = Split(strTEXTDATA, ",")(i)
   Else
    strTEXTDATANEW = strTEXTDATANEW & "," & Split(strTEXTDATA, ",")(i)
   End If
  End If
 Next
 MsgBox "旧  " & strTEXTDATA & vbCrLf & _
     "新  " & strTEXTDATANEW & vbCrLf & _
     "参考 " & Replace(strTEXTDATA, ",,", ",")
End Sub

0 hits

【31342】Replace(strTEXTDATA,",,",",")できません ごん 05/11/18(金) 0:01 質問
【31343】Re:連続したカンマを取り除きたい かみちゃん 05/11/18(金) 0:16 回答
【31344】Re:Replace(strTEXTDATA,",,",&... ichinose 05/11/18(金) 7:50 発言
【31409】Re:Replace(strTEXTDATA,",,"... ごん 05/11/19(土) 0:15 お礼

50281 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free