Excel VBA//如何转换具有特定名称或范围的N/A
我有以下表格中的数据Excel VBA//如何转换具有特定名称或范围的N/A,excel,vba,Excel,Vba,我有以下表格中的数据 City Name - City Code Delhi - DEL Mumbai - #N/A Chennai - #N/A 有N个数据,希望用城市名称替换N/a值。例如,第二排n/a将由孟买取代,第三排由钦奈取代。 请告知。假设您的数据被相应地放在A列和B列中,下面的代码将解决您的问题: Sub errors() i = 1 Do Until ActiveSheet.Range("A" & i).Value = "" If Left(CStr(Rang
City Name - City Code
Delhi - DEL
Mumbai - #N/A
Chennai - #N/A
有N个数据,希望用城市名称替换N/a值。例如,第二排n/a将由孟买取代,第三排由钦奈取代。
请告知。假设您的数据被相应地放在A列和B列中,下面的代码将解决您的问题:
Sub errors()
i = 1
Do Until ActiveSheet.Range("A" & i).Value = ""
If Left(CStr(Range("B" & i).Value2), 5) = "Error" Then Range("B" & i) = Range("A" & i).Value
i = i + 1
Loop
End Sub
这假设您的数据在A列和B列中,A列中的值是常量: 之前: 及之后:
不适用是由于单元格中的公式导致的错误吗?是的,这是错误。但我已经用“特殊粘贴”转换成了文本。在你这么做之前,将公式包装在处理错误的IFERROR中。我使用了以下代码:Set rng=Worksheets1.RangeA1:A2用于rng中的每个单元格If Application.WorksheetFunction.IsNAcell然后cell.value=0 End如果下一个代码将n/a值转换为0,但我想用特定的城市名称替换它。请输入任何代码尝试在原始问题中使用,而不是在注释中。从出现错误的行中附加数据。抱歉,亚当,我无法获取。请重复。如果可能,请帮助我。我正在使用代码子jk Dim lRow作为Long Dim iCntr作为Long lRow=1作为iCntr=lRow到10000步骤1如果CellsiCntr,1=Jambi,ID,然后是RowsiCntr。删除End如果下一个End子数据雅加达,ID雅加达,ID雅加达,ID Jambi,ID Jambi,ID雅加达,ID Jambi,ID仰光,MM仰光,MM Jambi,ID Jambi,ID Jambi,ID仰光,MM仰光,MM代码删除数据为Jambi,ID的整行,但例如循环删除第3行和第4行变为第3行。因此如何才能再次删除第三行?
Sub fixup()
Dim r As Range
For Each r In Columns(1).SpecialCells(2)
If InStr(r.Offset(0, 1).Text, "#N/A") > 0 Then
r.Offset(0, 1).Value = r.Value
End If
Next r
End Sub