2017-10-04 13 views
0

いずれかの行の最後の列のカンマを空白に置き換える必要があります。vbaで空白にカンマを置き換えます。

1  _1 "", 
2  _2 "", 
3  _3 "", 
4  _4 "", 
5  _5 "", 

マイコード。それは動作していません。

Private Sub CommandButton1_Click() 
    Dim lRow As Long 
    Dim length As Long 

    'Find the last non-blank cell in column A(1) 
    lRow = Cells(Rows.Count, 1).End(xlUp).Row 
    length = Len(Range("C" & lRow)) - 1 
    Range("C" & lRow).Value = Replace(Range("C" & lRow), ",", "", length) 
    Range("B2:B" & lRow).ClearContents 
End Sub 
+0

特定のセルの最後の行(コードが示すとおり)を意味します。これは、どの行の最後の列でもありません。右? – JensS

答えて

0

これはトリックを行う必要があります。

Private Sub CommandButton1_Click() 
    Dim lRow As Long 

    lRow = ActiveSheet.UsedRange.Rows.Count 
    If Right(Range("C" & lRow).Value, 1) = "," Then 
    Range("C" & lRow).Value = Left(Range("C" & lRow), Len(Range("C" & lRow)) - 1) 
    End If 

    Range("B2:B" & lRow).ClearContents 
End Sub 
:それはカンマがある場合、それは最後の行の最後の文字を削除します(これはあなたのコードが示すように、列Cに置き換えることを前提として)

あなたはまた、置換を使用することができますが、それはそのようにトリッキーです。

関連する問題