powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
10 сообщений из 10, страница 1 из 1
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39757449
K-Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.
Нужно прилинковать к Access 2007 таблицу Excel (XLSX). Проблема в том, что некоторые текстовые столбцы содержат текст больше 255 символов, но не везде, а в середине-конце таблицы. Видимо из-за этого эти поля определяются Access-ом не как МЕМО, а как текстовые поля. Можно ли как-нибудь принудительно указать формат поля при прилинковывании? Файлы огромные, поэтому обработка с помощью VBA нежелательна (очень медленно).
Заранее премного благодарен.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39757727
Что бы правильно определялся тип МЕМО, нужно либо иметь ячейку с длинным текстом в первых 8 строках, либо указать 0 в параметре "TypeGuessRows" драйвера в реестре (проверять все строки).
Если 2-й вариант не подходит, а найти и переместить вверх нужную строку проблематично и долго, то на вскидку вижу два варианта:
1. Тупо добавить строку с левым длинным текстом, а в Аксе откинуть эту строку в запросе по Null в другом обязательном поле. Можно таблицу и не присоединять - сразу запрос со строкой подключения.
2. В свободном столбце получить длину текста в ячейке (функция ДЛСТР) и отсортировать по этому столбцу по убыванию.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39757768
K-Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кривцов Анатолий,
Спасибо. Придется пойти по пути №1, т.е. сначала программно добавлять в начало строку с нужной длиной текста, а потом прилинковывать.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39757824
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
K-NickДоброго времени суток.
Нужно прилинковать к Access 2007 таблицу Excel (XLSX). Проблема в том, что некоторые текстовые столбцы содержат текст больше 255 символов, но не везде, а в середине-конце таблицы. Видимо из-за этого эти поля определяются Access-ом не как МЕМО, а как текстовые поля. Можно ли как-нибудь принудительно указать формат поля при прилинковывании? Файлы огромные, поэтому обработка с помощью VBA нежелательна (очень медленно).
Заранее премного благодарен.

Можно без особых усилий в MS Access 2007 создать сохраненную операцию импорта , только вместо линка будет создаваться таблица. в базе. В процессе создания операции типа "сохраненная операция импорт" можно указать один раз типы импортируемых полей. И потом всю жизнь проекта пользоваться, либо изменить в любой момент. А после выполнения процедуры удалять таблицы программно. И все поля будут корректно добавлятся. Запустить сохраненную процецуру импорта можнопри помощи простенького кода:

Код: vbnet
1.
Docmd.RunSavedImportExport( _имя_импортно_экспортной_операции_ )



Создать еще проще, приложил картинки (если религия позволяет, можете не линковать ,а импортировать, ИМХО субъективно быстрей вытаскивать информацию из временно созданной таблицы ,нежели из линкованной.)
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39759369
K-Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей Лалов,
Спасибо!
Но, к сожалению, импортировать не удалось - выдается ошибка "Ключ поиска не найден ни в одной записи", а способ с добавлением строки в начало замечательно помог - пара десятков строк кода и все заработало.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39759701
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
K-Nick - выдается ошибка "Ключ поиска не найден ни в одной записи"

При создании процедуры импорта в процессе просто укажите ,чтобы создавалось ключевое поле в таблице, куда все это будет импортироваться. Второй или третий этап, точно не помню, вопрос в общем решается за секунду)

K-NickСергей Лалов,
а способ с добавлением строки в начало замечательно помог - пара десятков строк кода и все заработало.
Пара десятков строк кода ...хм.. вы там для Илона Маска пишете алгоритм возвращения ракеты на стартовую площадку?)
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39760301
K-Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей ЛаловПри создании процедуры импорта в процессе просто укажите ,чтобы создавалось ключевое поле в таблице, куда все это будет импортироваться. Второй или третий этап, точно не помню, вопрос в общем решается за секунду)
Делал. Не помогает.
Сергей ЛаловПара десятков строк кода ...хм.. вы там для Илона Маска пишете алгоритм возвращения ракеты на стартовую площадку?) Ну это с "накладными расходами" на создание рабочей копии файла (оригинал править нельзя) и т.п.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39760404
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
K-NickПри создании процедуры импорта в процессе просто укажите ,чтобы создавалось ключевое поле в таблице, куда все это будет импортироваться. Второй или третий этап, точно не помню, вопрос в общем решается за секунду)
Делал. Не помогает.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39760407
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По вашему первому вопросу можете выслать вашу базку и шаблон файла экселевского , можно упрощенно, без данных, одна таблица в аксессе, и шаблон экселевского файла. Думаю решим вашу проблему на месте.
...
Рейтинг: 0 / 0
Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
    #39761301
K-Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей ЛаловПо вашему первому вопросу можете выслать вашу базку и шаблон файла экселевского , можно упрощенно, без данных, одна таблица в аксессе, и шаблон экселевского файла. Думаю решим вашу проблему на месте.
Благодарю за предложение, но в нашей организации категорически не приветствуется отправка каких-либо данных "на сторону". Даже шаблонов и пустых баз.
К тому же реализованный вариант меня вполне устраивает.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Можно ли принудительно указать размер текстовых полей при прилинковывании файла Excel?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]