Страница: 1 | 2 |
Вопрос: Excel(Смешной вопрос)
Добавлено: 22.02.07 21:15
Автор вопроса: Djon | Web-сайт:
Здраствуйте.
Я не разу не пробовал программировать в VBA.
Вот возникла проблемка. Только чур не смеяться.
пишу
И у меня выскакивает ошибка.user-defined type not defined
Что мне нужно подключить к проекту?
Ещё вопрос как Из екселя считывать текст в проект?
Спасибо
Ответы
Всего ответов: 16
Номер ответа: 1
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #1
Добавлено: 22.02.07 21:21
по поводу Dim objExcel As Excel.Application Вопрос снят. Я тупонул
Номер ответа: 2
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #2
Добавлено: 22.02.07 21:38
Дополнение к вопросу: Как записывать текст в ексель и читать текст из него не открывая ексель?
Номер ответа: 3
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #3
Добавлено: 22.02.07 23:16
А как на счет понюхать цветы в противогазе?
Номер ответа: 4
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #4
Добавлено: 23.02.07 02:44
На самом деле сделать это очень сложно, так как формат файлов предыдущих версий Microsoft Office практически не документирован.
Единственное, что могу посоветовать - перейти на новый формат файлов (Office 2007), который полностью документирован и стандартизирован.
Хоть формат и немного мудреный, работать можно, если нужно
Номер ответа: 5
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #5
Добавлено: 23.02.07 08:59
Понятно, тогда такой вопрос: Как выключать ексель программно.т.е убивать процесс?
Номер ответа: 6
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #6
Добавлено: 23.02.07 12:24
KillProcess
Номер ответа: 7
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #7
Добавлено: 23.02.07 16:43
"выключать ексель программно" это совсем не означает "убивать процесс"!
И KillProcess в данной ситуации есть самое наикривейшее решение. Для программного закрытия Excel в нем предусмотрены специальные методы. Примеров в инете - туча!
Номер ответа: 8
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #8
Добавлено: 23.02.07 17:54
лучше использовать формат Office 2007
В .NET Framework 3.5 даже есть классы для работы с форматом (на dev.net.ua есть пример использования)
Номер ответа: 9
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #9
Добавлено: 24.02.07 10:03
Ребята, вот я нашёл код что бы закрыть ексел
ActiveWorkbook.Saved = True
ActiveWorkbook.Save
Но дело в том что при закрытии выскакивает окно спрашивающее "Сохранить?", т.к я вносил изменения.
Вопрос как програмно сделать что бы выбиралось сохранить?
Номер ответа: 10
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #10
Добавлено: 24.02.07 21:38
Хм. Не такой уж и смешной вопрос оказался.
Номер ответа: 11
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #11
Добавлено: 25.02.07 10:22
Вопрос реально смешной.. просто ты не понимаешь сути команд которые написал...
Это сообщение появляется в том случае,если хотя бы 1 из открытых книг не сохранена.. У тебя есть 2 пути:
- если ты не хочешь сохранять, тогда тупо ставишь в КАЖДОЙ книге (а не только в ActiveWorkbook) свойство Saved = True После чего через Close ЗАКРЫВАЕШЬ книгу..
- либо (если это необходимо) сохраняешь каждую книгу на винт используя метод Save. При этом свойство Saved автоматически становится True.. После чего опять ЗАКРЫВАЕШЬ книгу..
- И только после всего этого делаешь Application.Quit для закрытия Excel..
Разумеется все способы можно комбинировать. Главное, чтобы Excel "думал", что все книги сохранены..
Номер ответа: 12
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #12
Добавлено: 25.02.07 11:13
Спасибо, почти понял
Можно немножко расписать, всмысле кодом.
Номер ответа: 13
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #13
Добавлено: 25.02.07 15:09
да забей ты на этот Excel.Application.
Юзай формат 2007 офиса, там все решается без этого гемороя!
Номер ответа: 14
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #14
Добавлено: 25.02.07 23:59
А в чем трудности? в вызове метода Save? Открывай справку по Excel и читай.. там все это написано. В простейшем случае этот метод принимает один-единственный аргумент-путь сохраняемого файла. Если же открываешь уже существующую книгу, то даже путь можно не указывать.
Номер ответа: 15
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #15
Добавлено: 26.02.07 00:01
Еще далеко не у всех стоят Office XP и 2003 .. а ты говоришь юзать 2007..