Страницы: 1
RSS
Как отключить игнорирование пустых столбцов в QueryTables.Add
 
Есть функция, которая экспортирует данные из таблицы Access в Excel:  
xlSheet.QueryTables.Add(  
   Connection:=Array( "OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User          
   ID=Admin;Data Source=" + TempBase + ";Mode=Read;",  
   "Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";  
   Jet OLEDB:Database Password="""";Jet OLEDB:", _  
   "Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;  
   Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:", _  
   "New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt  
   Database=False;Jet OLEDB:Don't Copy Locale on Compa",    
   "ct=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False"),      
   Destination:=xlSheet.Range("A1"))  
 
Но данная функция при копировании не переносит пустые столбцы таблицы в Excel. Как отключить эту фичу?  
Подскажите название атрибута, не нашел сам.
 
bvsss, Вы пишете про ЭКСПОРТ, а это подразумевает, что работа ведётся в Access. Следовательно, Ваш вопрос к Excel не имеет никакого отношения. Может быть имелся ввиду ИМПОРТ из Access в Excel, когда всё выполняется в Excel?
 
Вообще эта функция отрабатывает в Access модуле, но запускается от объекта xlsSheet:    
 Set xlSheet = xlBook.Worksheets(1)  
 With xlSheet.QueryTables.Add(Connection:=Array .......  
 
насколько я понимаю QueryTables - это реализация Excel'ской    
"Данные" -> "Импорт внешних данных".
 
Вот это место:  
Data Source=" + TempBase + ";  
Посмотрите, что это у вас. Подозреваю, что запрос, который и выкидывает пустые столбцы.
Всё сложное - не нужно. Всё нужное - просто /М. Т. Калашников/
 
Data Source=" + TempBase + ";  
 
Это указание на базу, из которой берется таблица.  
Data Source=С\TempBase.mdb;  
Таблица с корректным набором столбцов, так что не в этом проблема
 
База данных состоит из множества таблиц. Откуда Ваша функция знает, из какой таблицы базы данных С:\TempBase.mdb ей подтягивать данные?  
Где в аргументах Вашей функции название таблицы?
Всё сложное - не нужно. Всё нужное - просто /М. Т. Калашников/
Страницы: 1
Читают тему
Наверх