如果范围中的单元格包含值,则将单元格中的文件路径插入左侧

时间:2015-05-07 14:10:43

标签: excel vba excel-vba

上面的标题应该解释我在这里要取得的成就。谁能帮我?

Dim csv_ap As String
Dim path_report As String

Sheets("Mail Report").Activate
csv_ap = Range("C65000").End(xlUp).Offset(1).Value

If csv_ap = "NO" Then
path_report = MAIN_PATH & "For Resolution\" & Format(today, "dd_mm_yy") & "manual_handling_" & Range("A65000").End(xlUp).Value

End If

Range("B65000").End(xlUp).Offset(1).Value = path_report

我使用人们在下面的评论中提供的信息更改了上面的代码。我现在遇到的问题是,处理的最后一个“NO”会将其路径位置粘贴到Range(B1)中,它将替换标题。任何人都可以看到另一个问题所在吗?

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).Value = path_report

End If

2 个答案:

答案 0 :(得分:0)

您的问题就在这一行lock.lock(); try { while (count == items.length) notFull.await(); items[putptr] = x; if (++putptr == items.length) putptr = 0; ++count; notEmpty.signal(); } finally { lock.unlock(); }

从看它。您将前往csv_ap = Range("C65000").End(xlUp).Offset(1).Value 然后上升,直到有值。但是你要加一个。因此,如果具有最后一个值的单元格为C65000,则它将转到C3哪个为空。因此,C4始终为csv_appvbnullstring,因此请将行更改为

""

因此,在此代码中,您尝试在csv_ap = Range("C65000").End(xlUp).Value中找到最后一个值,然后将值放在C列中,并使用最新的空白单元格。

答案 1 :(得分:0)

偏移是你的问题,总是会返回一个空格:我想出了这个:

{{1}}