使用VBA替换CSV文件中一列中的所有值

扎南

我有一个csv文件,在不同的列中混合了字符串和数字。我要替换所有的“?” 字符形成列C。

我正在尝试以下方法:

Set wb_dst = Workbooks.Open("C:\myFile.csv")
Set ws_dst = wb_dst.Sheets(1)
values = ws_dst.Range("C1:c500").Value
values = Replace(values, "?", "")

但是不确定如何在column C不替换其他列中的值的情况下将该值转储回去或者,是否有其他方法可以执行上述任务,或仅替换本地驱动器上csv文件中特定列中的某些字符?

编辑:我正在寻找更新myFile.csv C列中的值,所以我想我必须将数据转储到C列,我不确定吗?

瓦里阿图斯

这很简单。您只需将修改后的范围内的数组分配回相同范围内的值即可。但是,这种想法values = Replace(values, "?", "")不会实现。您将需要分别修改数组的每个元素。

Sub Macro1()

    Const LookFor       As String = "?"
    Const Replacement   As String = "X"
    
    Dim Wb              As Workbook
    Dim Ws              As Worksheet
    Dim Rng             As Range
    Dim Arr             As Variant
    Dim R               As Long                 ' loop counter: rows
    
    Set Wb = Workbooks.Open("C:\myFile.csv")
    Set Ws = Wb.Worksheets(1)
    Set Rng = Ws.Range("C1:C500")
    
    Arr = Rng.Value
    For R = 1 To UBound(Arr)
        Arr(R, 1) = Replace(Arr(R, 1), LookFor, Replacement)
    Next R
    Rng.Value = Arr
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

替换R中csv文件中一列中的几个字符

使用正则表达式有效地将熊猫中一列的值替换为另一列中的值?

如果所有值都在同一列中,如何从 csv 文件中读取数据?

sql中一列的所有值的总和

更改R中已过滤的data.frame中一列中的所有值

地块/照片的第二个标题是CSV中一列的值,但所有照片中仅使用最后一个值

如何在python中打印元组列表中一列的所有值?

如何获取sqlite3中一列的所有值?

带走数据框中一列中的所有先前值

如何替换不在另一列值中的多列中的所有值

当所有值都是日期时,将一列中的 NA 替换为另一列中的值

从另一列中的值替换(gsub)列中的所有行?

如何替换数据框中每一列中的所有列表值

从excel vba中一列内的所有单元格中删除不需要的字符

如何从所有文件中删除第一列并进行替换?

查找其中一列属于同一值并且另一列满足SQL Server 2008中的条件的所有行

删除熊猫数据框中所有元素的最佳方法是什么?其中一列中的值在另一列中存在多次。

如何用起始值500更新oracle中一列的所有行并在oracle中递增

csv删除一列中具有重复值的所有行

通过使用函数根据行中的元素替换一列中的所有条目

Python,根据每一行的第一列中的值替换最后N列中的所有整数

替换数据框中一列的值

查找所有大于 0 的金额的 VBA 代码,然后考虑另一列中的所有唯一值

使用awk获取在一列中具有相同值的各行的所有值

PHP替换csv文件中第三列中的所有值

如何根据没有循环的另一列替换列(数据框)中组的所有相同值?

删除其中一列中带有“ $-”的数据框中的所有行

使用 SQL 中另一列的所有唯一值創建新列

编辑 4,000,000 行 CSV 文件中一列的值