额外的去限制器导致数据转移到右侧1列

时间:2017-03-06 14:39:11

标签: excel excel-vba vba

所以我获得了一个.csv文件,不幸的是,其中一个字段有时包含一个客户名称,格式为lastname,firstname是丢弃数据的。幸运的是,我可以检测到何时发生这种情况,因为其中一个被移位的列具有固定值。一个例子:

好行:

[New Contact!]  [phonenumber]   5939262 [Unknown]   2000    5083    5083

错误行:

[lastname]  [firstname] [phonenumber]   2800    [Unknown]   2000    5061    5061

因此,如果第5列= [未知],我知道列需要向左移动该行。第一列包含未使用的数据,因此,如果我丢失了我不在乎的名称,那么它只是数字。

有没有简单的方法可以在不重新生成数据的情况下执行此操作?

1 个答案:

答案 0 :(得分:2)

您可以在导入后尝试使用此宏来修复文件:

Sub fixIt()
    Dim r As Range
    For Each r In Worksheets("Sheet1").UsedRange.Rows ' <-- put the right sheet name here
        If WorksheetFunction.CountA(r) > 7 Then r.value = r.Offset(, 1).value
    Next
End Sub