如何将信息复制到与另一列中find的内容对应的列中?

我已经写了一个macros,我想复制一个保存的电子邮件及其附件的path位置到列B,但只有当找不到.csv文件。 这里是我的代码如下:

 Dim csv_ap As String Dim path_report As String Sheets("Mail Report").Activate csv_ap = Range("C65000").End(xlUp).Value If csv_ap = "NO" Then path_report = MAIN_PATH & "For Resolution\" & Format(today, "dd_mm_yy") & "manual_handling_" & Range("A65000").End(xlUp).Value Range("B65000").End(xlUp).Offset(1).Value = path_report End If 

这是macros运行后生成的电子表格。 正如你所看到的path不与C列中的“否”alignment。 我需要macros来实现path需要与正确的行alignment。 我怎样才能做到这一点? (下面的图片是其他情况下会有所不同的例子)

宏的截图结果(范围(B1:B2)在宏之前是空的)

有很多不同的(也可能更好的)方式来处理这个问题,但是对现有的代码做最小的改变,你可以这样做:

 Dim csv_ap As Range Dim path_report As String Sheets("Mail Report").Activate set csv_ap = Range("C65000").End(xlUp) If csv_ap.Value = "NO" Then path_report = MAIN_PATH & "For Resolution\" & Format(today, "dd_mm_yy") & "manual_handling_" & Range("A65000").End(xlUp).Value csv_ap.Offset(0, -1) = path_report End If 

它不返回一个string作为csv_ap ,而是返回一个范围。 然后testing单元格的值,如果它等于“否”,则将path报告返回到左侧的单元格中。