SSecurity писал(а):Я конечно могу за "не просто так" помочь ...
В противном случае - могу подсказать куда копать - а писать всю программу ... это сам понимаешь
с Уважением,
Сергей
Dim xApp As New Excel.Application
Dim xWB As Excel.Workbook
Dim xWS As Excel.Worksheet
Private Sub Form_Load()
Set xWB = xApp.Workbooks.Open(File_Name)
Set xWS = xWB.Worksheets(1)
'....
'Тут пишешь код как в VBA (его можешь получить как предложил EUGY)
'....
xWB.Close
xApp.Quit
End Sub
EUGY писал(а):Попробуй вот что для начала ..... и проанализируй результат записи макроса.
Dim xApp As New Excel.Application
Dim xWB As Excel.Workbook
Dim xWS As Excel.Worksheet
Private Sub Form_Load()
'## отключаем сообщения и отображение
xApp.DisplayAlerts =False
xApp.Visible = False
Set xWB = xApp.Workbooks.Open(File_Name)
'....
'## обращение к листу книги:
'## через индекс, например 1й лист:
Set xWS = xWB.Worksheets(1)
'## через название, например лист "Results":
Set xWS = xWB.Worksheets("Results")
'## получение значения в ячейке B21
'## по адресу:
testValue = xWS.Range("B21").Value
'## или через массив
testValue = xWS.Cells(21,2).Value
'...
xWB.Close
xApp.Quit
End Sub
P = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row
Set pp = ActiveSheet.Cells.Find("ToTal")
msgbox PP.Address
Set xWB = xApp.Workbooks.Open(File_Name)
SSecurity писал(а):DeBass
2. типа вот так
- Код: Выделить всё
Set pp = ActiveSheet.Cells.Find("ToTal")
msgbox PP.Address
DeBass, ну так этот код никакие файлы не "подгружает". Это декларации переменных:
(Private / Public / Dim / Static) имя_переменной As тип_переменной.
Файл загружается вот этой строкой:
Visual Basic:
Set xWB = xApp.Workbooks.Open(File_Name)
P. S. Ты с VB раньше работал?
'Декларации
Dim xApp As New Excel.Application 'Сам Excel
Dim xWB As Excel.Workbook 'Документ Excel (книга)
Private Sub Form_Load()
'Отключаем сообщения (необязательно, но желательно)
xApp.DisplayAlerts = False
'Делаем окно Excel невидимым (необязательно, но желательно)
xApp.Visible = False
'Загружаем документ (обязательно)
'Эту строку ты скорее всего пропустил
Set xWB = xApp.Workbooks.Open("C:\1.xls")
'Ищем ячейку со значением ToTal
Set PP = ActiveSheet.Cells.Find("ToTal")
'Выводим сообщение с адресом искомой ячейки
MsgBox PP.Address
'Закрываем документ
xWB.Close
'Завершаем Excel
xApp.Quit
End Sub
Сейчас этот форум просматривают: SemrushBot и гости: 63