|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|||||||||||
Доступ к данным другой книги Excel05.01.2014, 18:17. Показов 15396. Ответов 33
Метки нет (Все метки)
Нужно, работая в одной книге, открыть другую книгу и работать с данными оттуда. Есть фрагмент кода:
Подскажите, пожалуйста. Не понимаю этого.
0
|
|||||||||||
| 05.01.2014, 18:17 | |
|
Ответы с готовыми решениями:
33
доступ к данным другой программы Доступ к данным Datagridview из другой формы |
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 11:58 [ТС] | |
|
Файл "Кафе" - главный. Там на панельке есть кнопка "Работа с персоналом". При нажатии на неё считываются данные из книги "Персонал" и загружаются на форму. Потом работника можно удалить, изменить данные, или добавить нового человека. Данные то считываются, а дальше ничего сделать невозможно.
0
|
|
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 12:04 [ТС] | |
|
Вы там сильно не обращайте внимания на мой кривой код. Я ведь только учусь
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 10.01.2014, 14:00 | ||||||
|
Посмотрел.
Думаю основной вопрос я уже выше решил, всё работает (заменил строку ничего в ней не меняя):
)Замечание по практическому применению - нужно бы при переходе на другие книги возвращать родной интерфейс. А он кстати вообще не возвращается полностью даже после закрытия книги - Application.CommandBars("Management").De lete не хватает. А вообще код совсем и не кривой.
1
|
||||||
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 14:37 [ТС] | |
|
Спасибо Вам большое
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 10.01.2014, 15:36 | |
|
Думаю там дело вот в чём (посмотрел пристальнее
) - нельзя закрывать книгу-источник листбокса. И у Вас ругается не на память, а на недоступность ресурса.Нужно или держать ту книгу открытой, или брать данные в массив и заполнять листбокс из него (можно и с листа, но из массива быстрее).
0
|
|
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 16:20 [ТС] | |
|
А будет всё нормально, если я в каждой процедуре буду открывать книгу, но закрывать только в самом конце, при закрытии формы?
Мне вариант с открытой книгой кажется проще (лично для меня). С массивом сложновато будет
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 10.01.2014, 16:31 | |
|
Можно и открывать каждый раз заново, но зачем?
И если будут изменения в открытом ранее файле - то будет запрос по поводу этих изменений, т.к. они пропадут. Лучше проверять, не открыт ли уже файл, или использовать getobject.
0
|
|
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 16:42 [ТС] | |
|
А что делать с getobject? Куда и когда его писать?
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 10.01.2014, 18:20 | ||||||
|
Ну вот например некая симуляция:
Но иногда такой способ глючит. Но редко ![]() Как можно заметить - в этом случае книга каждый раз не "переоткрывается".
0
|
||||||
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 18:47 [ТС] | |
|
А можно как-то сделать так, что открыть книгу один раз, делать с ней что угодно, а потом закрыть? Как-нибудь так, чтобы она была доступна из любого места программы (ну или почти из любого)?
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 10.01.2014, 19:03 | ||||||
|
Можно.
Погоняйте пошагово например такие коды. В начале обязательно выполнить Sub otkritie(), в конце Sub zakritie() Код должен быть в стандарном модуле!
0
|
||||||
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
||||||||||||||||
| 10.01.2014, 20:46 [ТС] | ||||||||||||||||
|
Делаю так.
Это дело написала в стандартном модуле
0
|
||||||||||||||||
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 10.01.2014, 21:29 | ||||||
|
Ругается вероятно потому, что файл не открыт. Вообще ругнуться тогда должно уже строкой выше, на Set ws...
Форма так не видит переменную Filename, да и вообще их все. Нужно писать имямодуля.Filename и аналогично с wb и ws. Но если использовать будете только в одной форме - то переносите весь этот код в модуль формы. Смысл в том, чтоб в начале работы в публичные переменные запомнить путь к файлу, и определить объектные переменные, которые будут указывать на файл и лист. Затем из любой процедуры формы проверяем переменные - если там нет файла, то его открываем, если же есть - используем. Хотя конечно можно просто каждый раз не глядя делать
0
|
||||||
|
10 / 10 / 2
Регистрация: 23.09.2012
Сообщений: 427
|
|
| 10.01.2014, 22:04 [ТС] | |
|
Перенесла весь код в модуль формы. Всё по прежнему...
0
|
|
| 10.01.2014, 22:04 | |
|
Доступ к данным, которые находятся в другой форме ОЧЕНЬ медленный доступ к данным в файлах Excel Доступ к данным Excel с помощью ADO.NET Как считать Excel файл и получить доступ к данным? Как получить доступ к данным в новом окне excel? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|