【发布时间】:2015-08-19 01:57:58
【问题描述】:
我正在尝试构建一个宏,该宏可以根据其列标题(“TOTAL”)(工作表名称:FIL)找到并复制最后一个单元格,并将其复制到另一个工作表中的特定单元格(B2)(工作表名称:宏模板)。我找到了它的代码,但它没有复制另一张表中的值。我尝试调整它以使其工作但没有运气(如果命令按钮在同一张表(FIL)上,则代码有效,但如果放在另一张表(MACRO TEMPLATE)中,则代码不起作用。)。
我还有另一个关于代码的问题。合并标题所在的单元格(第 9 行和第 10 行)。是否可以按列搜索而不是查找标题行,以便合并单元格不受影响?任何帮助将不胜感激。
代码如下:
Dim headerRow As Integer
Dim totalColumnsInHeaderRow As Integer
Dim searchColumn As Integer
Dim lastRowInSearchColumn As Integer
Dim columnSearchString As String
With Sheets("FIL")
headerRow = 9
totalColumnsInHeaderRow = Sheets("FIL").Cells(headerRow, Columns.Count).End(xlToLeft).Column
columnSearchString = "TOTAL"
searchColumn = 0
Dim currentColumn As Integer
For currentColumn = 1 To totalColumnsInHeaderRow
If StrComp(Sheets("FIL").Cells(headerRow, currentColumn).value, columnSearchString, vbTextCompare) = 0 Then
searchColumn = currentColumn
Exit For
End If
Next
If searchColumn > 0 Then
'Set F2 equal to the last value in that column
lastRowInSearchColumn = Sheets("FIL").Cells(Rows.Count, searchColumn).End(xlUp).Row
Sheets("MACRO TEMPLATE").Range("B2").value = Cells(lastRowInSearchColumn, searchColumn).value
End If
End With
【问题讨论】: