| 
    
            
         
         | 
    
  | 
v7: не читается один столбец excel через адо | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        maestro-72    
     13.11.13 
            ✎
    17:16 
 | 
         
        Есть excel файл с колонками № артикул наименование количество сумма
 
        делаю доступ к нему через адо читается вся строка кроме артикул. Ячейка вроде не защищена, но данных из нее получить не получается. Через оле пожалуйста, но оле требует установки excel, а вот этого как раз и хотелось бы избежать. В чем может быть дело? Строка подключения АДО.Open(Шаблон("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=[ИмяФайла]; Extended Properties=""Excel 8.0;HDR=No;IMEX=1""")); Выборка данных rs = АДО.Execute("select * from [" + СокрЛП(Лист) + "]");  | 
|||
| 
    1
    
        mikecool    
     13.11.13 
            ✎
    17:17 
 | 
         
        заголовок колонки начинается с пробела?     
         | 
|||
| 
    2
    
        Ndochp    
     13.11.13 
            ✎
    17:19 
 | 
         
        Смотри первые строчки - АДО определяет тип по первым нескольким строкам и потом жестко глючит при несовпадении в дальнейших.
 
        С артикулом может например быть смена текст/число.  | 
|||
| 
    3
    
        maestro-72    
     13.11.13 
            ✎
    17:21 
 | 
         
        Т.е. насколько, я понял, если я читаю с 19 строки то все что до этого уже предустановлено, а как начать читать с той строки с которой нужно, и как жестко задать тип например: строка для колонок?     
         | 
|||
| 
    4
    
        mikecool    
     13.11.13 
            ✎
    17:26 
 | 
         
        (3) емнип, через драйвер читается только прямоугольная таблица с первой левой ячейки     
         | 
|||
| 
    5
    
        Serginio1    
     13.11.13 
            ✎
    17:27 
 | 
         
        (4) Нет можно указывать колонки
 
        Selrct F1,F2  | 
|||
| 
    6
    
        mikecool    
     13.11.13 
            ✎
    17:28 
 | 
         
        (5) а, точно! но со строками такое не выходит     
         | 
|||
| 
    7
    
        maestro-72    
     13.11.13 
            ✎
    17:31 
 | 
         
        Тогда как жестко задать тип поля самому?     
         | 
|||
| 
    8
    
        КонецЦикла    
     13.11.13 
            ✎
    17:34 
 | 
         
        Читай блок данных, все там читается
 
        Если не попал в заголовки колонок - ничего страшного, тем более можно попасть если шапка "многоуровневая" Бери сразу данные SELECT * FROM Лист1$A5:M100  | 
|||
| 
    9
    
        mikecool    
     13.11.13 
            ✎
    17:35 
 | 
         
        (8) о как, не знал про такое     
         | 
|||
| 
    10
    
        Serginio1    
     13.11.13 
            ✎
    17:37 
 | 
         
        6 если HDR=YES;
 
        то СтрЗапроса="Select ILN,[Название локализации] as Магазин,[Город],[Улица и дом] as Адрес,[State],[Индекс], [Код у Отправителя] as Код from ["+ИмяЛиста+"$]";  | 
|||
| 
    11
    
        maestro-72    
     13.11.13 
            ✎
    17:40 
 | 
         
        (8) ну к примеру начало можно предугадать но конец то как, наборы данных могут быть разные     
         | 
|||
| 
    12
    
        КонецЦикла    
     13.11.13 
            ✎
    17:43 
 | 
         
        (11) M100000 - хватит?
 
        Можно и все прочитать A1:AZ  | 
|||
| 
    13
    
        КонецЦикла    
     13.11.13 
            ✎
    17:44 
 | 
         
        SELECT Лист.* FROM [НазваниеЛиста$] as Лист
 
        Но я четал Microsoft Excel Driver, пробуй  | 
|||
| 
    14
    
        hhhh    
     13.11.13 
            ✎
    17:45 
 | 
         
        (12) может так?
 
        SELECT * FROM Лист1$A5  | 
|||
| 
    15
    
        КонецЦикла    
     13.11.13 
            ✎
    17:46 
 | 
         
        (14) Пробуйте, мне уже хватило :)     
         | 
|||
| 
    16
    
        maestro-72    
     13.11.13 
            ✎
    17:54 
 | 
         
        SELECT * FROM Лист1$A5 не взлетело
 
        Зато взлетело SELECT * FROM Лист1$A5:M100 Вопрос остался следующий как то по другому это диапазон задать можно? без букв, цифрами  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |