2016-11-14 23 views
2

以下のコードで試しましたが、カンマを削除できませんでした。助けてください。指定した文字列の最後のカンマを削除するには?

Sub removelastcommas() 

    Dim i As Integer, str As String 

    str = Range("A1") 

    For i = Len(str) To 1 
     If Mid(str, i, 1) <> "," Then 
      Exit For 
     End If 
    Next 
    Range("b1") = Left(str, i) 

End Sub 
+2

' = A1、 "、"、 ""、LEN(A1)-LEN(SUBSTITUTE(A1、 "、"、 ""))) –

答えて

2

別のオプションは次のとおりです。

Sub removelastcommas() 

    Dim i As Integer, str As String 
    str = Range("A1") 

    i = InStrRev(str, ",") 
    ' comma found in A1 
    If i > 0 Then 
     Range("B1") = Left(str, i - 1) & Right(str, Len(str) - i) 
    Else ' comma not found in A1 
     Range("B1") = Range("A1") 
    End If 

End Sub 
2

これは、文字列の最後のコンマが削除されます:(ループを使用せずに)InStrRev機能を使用して、

Sub removelastcommas() 
    Dim i As Integer, str As String 
    str = Range("A1") 
     For i = Len(str) To 1 Step -1 
      If Mid(str, i, 1) = "," Then 
       Range("B1").Value = Left(str, i - 1) & Mid(str, i + 1) 
       Exit Sub 
      End If 
     Next i 
End Sub 

enter image description here

関連する問題