Что имеем:
— файл .xls, который ведется пару лет вручную. Необходимо автоматизировать действия. Т.е. спрашиваем у пользователя пару вещей, открываем excel (в фоновом режиме), добавляем 1 строчку (при этом важно, чтобы никакое форматирование не сбилось) и всё.
Прочитал море факов. Везде пишет про КОМ сервер. Но фака с объяснением каждой строчки так и не нашёл. Писать планирую в VS (C++). Но можно и в билдере на C++. Или на совсем крайний случай в VS на C#. Заранее спасибо за любую помощь!
Здравствуйте, PbICb, Вы писали:
PIC>Что имеем: — файл .xls, который ведется пару лет вручную. Необходимо автоматизировать действия. Т.е. спрашиваем у пользователя пару вещей, открываем excel (в фоновом режиме), добавляем 1 строчку (при этом важно, чтобы никакое форматирование не сбилось) и всё. PIC>Прочитал море факов. Везде пишет про КОМ сервер. Но фака с объяснением каждой строчки так и не нашёл. Писать планирую в VS (C++). Но можно и в билдере на C++. Или на совсем крайний случай в VS на C#. Заранее спасибо за любую помощь!
Самый простой способ: открываешь excel, в меню находишь "Запись макроса", выполняешь необходимые действия со строчками (мышка работать не будет) и закрываешь "Запись макроса". Потом открываешь ВизуалБейсик или находишь в меню "Редактирование макроса" и попадаешь в тело написанного кода. Причёсываешь — всё же генерится машиной! — и переводишь на свой любимый язык.
Что касается С++. Есть директива #import. Для excel она есть где-то тут на форуме: Результаты поиска. Посмотри, как люди пишут и используют её. Если будут непонятки, то вэлкам обратно.
PIC>Запустил эксель в фоне (видно в процессах), закрыть его тоже могу. А вот открыть какой-либо файл нет. Даже если тупо делаю копипаст из фака.
workbookname = "c:\tmp\x.xls"Set ExcelApp = CreateObject("Excel.application")
Set ExcelBook = ExcelApp.Workbooks.Open(workbookname)
Или же
Set ExcelBook = GetObject(workbookname)
Set ExcelApp = ExcelBook.Application
Вот такой вот код открывает Excel в фоновом режиме. Далее надо открыть книгу в нём. Попробывал ваши варианты — все отказывается компилить из-за ошибок. Заранее спасибо за ответ!
Re[5]: Редактирование уже существующего .xls файла