如果需要用VBA的方法获得某个工作簿中工作表的名称,可以使用下面的代码,其中使用了 Microsoft ActiveX Data Objects (ADO),可以将指定工作簿中的工作簿名称显示在A列中,在使用时需将代码中的工作簿名称及路径进行更改。
Sub GetSheetNames()
Dim objConn As Object
Dim objCat As Object
Dim tbl As Object
Dim iRow As Long
Dim sWorkbook As String
Dim sConnString As String
Dim sTableName As String
Dim cLength As Integer
Dim iTestPos As Integer
Dim iStartpos As Integer
‘在此输入工作簿名称及路径.
sWorkbook = "G:\Excel文件\book2.xls"
sConnString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & sWorkbook & ";" & _
"Extended Properties=Excel 8.0;"
VBA中Activate方法和Select方法的区别
VBA中的Activate方法和Select方法看起来似乎相同,其实二者是有区别的。Activate方法的作用是激活,而Select方法的作用是选择。其区别如下: 1.对于“Sheets”对象 Sheets.Select可以同时选择多个工作表,而Sheets.Active不能同时激活多个工作表。
Set objConn = CreateObject("ADODB.Connection")
objConn.Open sConnString
Set objCat = CreateObject("ADOX.Catalog")
Set objCat.ActiveConnection = objConn
iRow = 1
For Each tbl In objCat.Tables
sTableName = tbl.Name
cLength = Len(sTableName)
iTestPos = 0
iStartpos = 1
If Left(sTableName, 1) = "’" And Right(sTableName, 1) = "’" Then
iTestPos = 1
iStartpos = 2
End If
If Mid$(sTableName, cLength – iTestPos, 1) = "$" Then
Cells(iRow, 1) = Mid$(sTableName, iStartpos, cLength – _
(iStartpos iTestPos))
iRow = iRow 1
End If
Next tbl
objConn.Close
Set objCat = Nothing
Set objConn = Nothing
End Sub
excel利用VBA删除单元格、行和列
如果要用VBA代码在Excel工作表中删除指定的单元格、行和列,可以使用下面的代码: Sub DeleteCellRowColumn()‘删除活动单元格,下方单元格上移ActiveCell.Delete Shift:=xlUp‘删除选定的区域,右方单元格左移Selection.Delete Sh