如何从Excel中的数据列中删除字符

时间:2013-11-22 20:48:25

标签: excel vba excel-vba

我正在格式化我收到的一些数据。我在A栏中有几百名学生,由于一些奇怪的原因,在名称中随机放置*。我想以编程方式从所有名称中删除所有*个字符。

 For x = 2 To 300

        Dim strStudent as String

        //how do i set contents of cell to string strStudent

        strStudent = Replace(strStudent, "*", "") //replace * with nothing

 Next

我的问题是,如何将单元格的内容设置为strStudent?然后我可以测试我是否正在更换零件。

1 个答案:

答案 0 :(得分:4)

您无需循环访问单元格。您可以使用Excel的内置.Replace功能,使用*替换所有"~*"

这是一个例子

Option Explicit

Sub Sample()
    Dim ws As Worksheet
    Dim Rng As Range

    '~~> Change this to the relevant worksheet
    Set ws = ThisWorkbook.Sheets("Sheet1")

    '~~> Change this to the relevant range
    Set Rng = ws.Range("A2:A300")

    Rng.Replace What:="~*", Replacement:="", LookAt:=xlPart, SearchOrder _
    :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub