我需要始终确保name
在列C和address
在列D.我用下面synatx扫描标题,并确定列位置的每个标题是在,但如果标题文本不符合强制性位置,那么将其移动到正确位置的语法是什么?获取基于关列位置搜索文本和移动
Sub SearchForText()
Dim strSearch As String, aCell As Range, strSearch1 As String
Dim aCell1 As Range, namecolumn As Int, addresscolumn As Int
strSearch = "Name"
Set aCell = Sheet1.Rows(1).Find(What:=strSearch, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
GetColumnName(aCell.Column)
namecolumn = GetColumnName()
strSearch1 = "Address"
Set aCell = Sheet1.Rows(1).Find(What:=strSearch1, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
GetColumnName(aCell1.Column)
addresscolumn = GetColumnName()
if namecolumn <> 3 THEN
'How to copy column to be position 3?
end if
if addresscolumn <> 4 THEN
'How to copy column to be position 4?
end if
End Sub
Function GetColumnName(colNum As Integer) As String
Dim d As Integer
Dim m As Integer
Dim name As String
d = colNum
name = ""
Do While (d > 0)
m = (d - 1) Mod 26
name = Chr(65 + m) + name
d = Int((d - m)/26)
Loop
GetColumnName = name
End Function
在你的代码的注释''如何复制列是4位'所以我假设你要搬家?整个专栏 - 不只是标题? –