【发布时间】:2019-05-14 23:43:33
【问题描述】:
下面是我的代码
Sub Append()
'Append data from other files
Path = "E:\NPM PahseIII\"
Filename = Dir(Path & "*.xlsx")
If InStr(Filename, ".") > 0 Then
Filenamenoext = Left(Filename, InStr(Filename, ".") - 1)
End If
MsgBox Filenamenoext
Range("A3").Select
Do While Filename <> ""
ActiveCell.Value = Filenamenoext
Loop
End Sub
我的问题是,因为我选择了 Range("A3").Select 是硬编码的,我希望这个选择在循环中动态完成,这样当循环的第一次迭代开始时它应该选择 Range("A3").Select 并进一步选择下一个单元格在下一次迭代中。
我怎样才能做到这一点?
已编辑
见下图
【问题讨论】:
-
您要在循环中选择的范围是多少?包括一张图片并显示您想要更新值的位置
-
@kooshy 立即查看图片。
-
使用
Range.End(xlUp).Offset(1)- 基本上找到列中最后填充的单元格并偏移1行。关于如何做到这一点的许多示例。 -
从A3开始到哪里?你还没有回答问题。您要在此循环中更新哪些单元格。你想从 A3 开始 - 我明白了,但是你想更新多少个单元格
-
@kooshy 因为在我的循环中有 6 个文件要读取,我希望在读取每个文件时,单元格范围应该进入下一个单元格。为了在单独的单元格中写入每个文件名。