Чтобы найти имя последнего листа Excel с помощью Visual Basic (VB), вы можете использовать различные методы в зависимости от версии Excel и конкретных требований вашего приложения. Вот несколько методов с примерами кода:
Метод 1: использование объектной модели Excel
Dim excelApp As New Excel.Application
Dim workbook As Excel.Workbook
Dim lastSheetName As String
Set workbook = excelApp.Workbooks.Open("C:\Path\to\your\Workbook.xlsx")
lastSheetName = workbook.Sheets(workbook.Sheets.Count).Name
MsgBox "The name of the last sheet is: " & lastSheetName
workbook.Close
excelApp.Quit
Метод 2: использование строки подключения ADO.NET
Dim connString As String
Dim conn As New ADODB.Connection
Dim rs As ADODB.Recordset
Dim lastSheetName As String
connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Path\to\your\Workbook.xlsx;Extended Properties=""Excel 12.0;HDR=NO;"""
conn.Open connString
Set rs = conn.Execute("SELECT TOP 1 [TABLE_NAME] FROM [Sheet1$] ORDER BY TABLE_NAME DESC")
lastSheetName = rs.Fields(0).Value
MsgBox "The name of the last sheet is: " & lastSheetName
rs.Close
conn.Close
Метод 3. Использование Open XML SDK
Dim filePath As String = "C:\Path\to\your\Workbook.xlsx"
Dim lastSheetName As String
Using spreadsheetDocument As SpreadsheetDocument = SpreadsheetDocument.Open(filePath, False)
Dim workbookPart As WorkbookPart = spreadsheetDocument.WorkbookPart
Dim sheets As IEnumerable(Of Sheet) = workbookPart.Workbook.Descendants(Of Sheet)()
Dim lastSheet As Sheet = sheets.LastOrDefault()
If lastSheet IsNot Nothing Then
lastSheetName = lastSheet.Name
End If
End Using
MsgBox("The name of the last sheet is: " & lastSheetName)
Это всего лишь несколько примеров того, как можно найти имя последнего листа Excel с помощью VB. В зависимости от ваших конкретных требований и версии Excel, которую вы используете, вам может потребоваться соответствующим образом адаптировать код.