Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 | 2 | 3 |

 

  Вопрос: Помогите начинающему: открыть и обработать dbf ! Добавлено: 27.07.09 01:10  

Автор вопроса:  Дмитрий

Ответить

  Ответы Всего ответов: 36  

Номер ответа: 16
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #16
Добавлено: 27.07.09 11:50

Offtop:
Чистый спирт должен содержать как минимум 3% воды, а в пиве воды до 94% (а в безалкогольном и того больше). Истинные, к коим я себя причисляю, кофеманы любят кофе без сахарас (могу пить и с сахаром) и не переносят кофе с молоком/сливками. Я варю кофе всегда в турке на медленном огне. Если пью с сахаром, всегда кладу сахар До варки, а не после, всегда не меньше 2 ложек кофе на чашку, всегда наливаю в чашку с гущей. Но самое главное - не пропустить момент, когда "самое оно". Иначе - кофе в раковину :)

Ответить

Номер ответа: 17
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #17 Добавлено: 27.07.09 11:51
Ну народ вы даете :-D.
Зачем гадить в такой важной теме :)?
Былаже тема специально для бреда, помнится даже называлась бредово, чтото типа "СУПЕР АНТИВИР НА ВБ6"

Ответить

Номер ответа: 18
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #18
Добавлено: 27.07.09 12:02
Дмитрий, ты хочешь код, а даже не ясно что решил по среде разработки. VBA пишется в VBE и в нем надо подключать библиотеку ADO: "Microsoft ActiveX Data Objects 2.X Library", в коде к библиотека будет видна как ADODB.

Как определишься со средой программирования и подключишь ADO, сообщи, совместим ли твой формат с dBASE III или нет? Короче от этого будет зависеть строка подключения, которую мы используем в коде.

В базах данных практически никогда не обращаются к строкам по их номеру, поэтому забудь про это. Можно перебирать строки таблицы по очереди, но к номеру никогда не привязывайся. Все что тебе надо будет для создания второй таблицы - написать 1 строку SQL-запроса и никаких циклов и прочих заморочек. Кстати, dbf-файлы обычно никто не хранит в корне диска, пусть они лежат в отдельной папке, как у всех нормальных людей.

Ответить

Номер ответа: 19
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #19 Добавлено: 27.07.09 12:04
Кто знает куда пропал Дмитрий?
  1. Public BaseDBF As New ADODB.Connection
  2.  
  3. 'коннект ADO к DBF
  4. Public Sub ConnectDBF()
  5.     With BaseDBF
  6.         .ConnectionString = "DSN=Файлы dBASE"
  7.         .Open
  8.         .CursorLocation = adUseClient
  9.         .DefaultDatabase = "C:\temp"
  10.     End With
  11. End Sub
  12.  
  13. 'создание врременной таблицы с одним текстовым полем
  14. Public Sub CreateTable()
  15.     BaseDBF.Execute "create table TEMPTABL (Field1 char (10));" 'в кавычках простейший SQL запрос
  16. End Sub

Ответить

Номер ответа: 20
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #20
Добавлено: 27.07.09 12:10
Зачем гадить в такой важной теме?

Так зачем тогда ты навалил в ней столько дубль-постов (и не удалил)? Лично я ничего не буду иметь против, если один из админов удалит мой оффтоп и вынесет мне за это строгое предупреждение. Но зная этот форум, мне не о чем волноваться - тут наверное так принято... Все помогаем топик-стартеру в меру своих опыта, знаний, желаний и возможностей.

Ответить

Номер ответа: 21
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #21
Добавлено: 27.07.09 12:11
Не катит через файловый DSN! Код создания файлового DSN тогда отдельной процедурой в студию, или правильную ConnectionString))))

Ответить

Номер ответа: 22
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #22
Добавлено: 27.07.09 12:18
Тогда вот так хоть строку заменить, не помню для какой из версий dBASE, это работало раньше с ODBC:
  1. .ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};DriverId=277;DBQ=C:\temp;DefaultDir=C:\temp"

Ответить

Номер ответа: 23
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #23 Добавлено: 27.07.09 12:31
У меня всё чудесно катит, слава МС!
Просто любители клепать дистрибутивы типа Зверя почемуто невзлюбили родные ДСНы.
Кстати и DSN свой создать/удалить всего одна апишка, плавали, знаем.

Ответить

Номер ответа: 24
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #24 Добавлено: 27.07.09 12:36
Навалил не я, а жопорез перед тем как пукнуть и сдохнуть совсем.
И про важность темы кстати сказано было с сарказмом.

Ответить

Номер ответа: 25
Автор ответа:
 VβÐUηìt



Вопросов: 246
Ответов: 3333
 Web-сайт: смекаешь.рф
 Профиль | | #25
Добавлено: 27.07.09 12:45
А будет ффкуссно? :D

Ответить

Номер ответа: 26
Автор ответа:
 UnDeAdZak



Вопросов: 80
Ответов: 476
 Профиль | | #26 Добавлено: 27.07.09 22:38
Чаем =)

Ответить

Номер ответа: 27
Автор ответа:
 UnDeAdZak



Вопросов: 80
Ответов: 476
 Профиль | | #27 Добавлено: 27.07.09 22:39
упс второй странички не увидел=( сорри

Ответить

Номер ответа: 28
Автор ответа:
 Дмитрий



Вопросов: 1
Ответов: 5
 Профиль | | #28 Добавлено: 28.07.09 01:44
Я здесь. Перевариваю информацию. Ох, нелегко!

Мне в соседнем форуме такой код написали:


  1.  
  2. Dim cmd As String
  3.     Dim sql As String
  4.     Dim cn As ADODB.Connection
  5.     Dim rs As ADODB.Recordset
  6.     
  7.     cmd = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\DB;Extended Properties=dBASE III;"
  8.     Set cn = New ADODB.Connection
  9.     cn.ConnectionString = cmd
  10.     cn.Open
  11.     
  12.     sql = "select * from Baza.dbf"
  13.     Set rs = New ADODB.Recordset
  14.     rs.Open sql, cn, adOpenKeyset, adLockOptimistic
  15.  
  16.     Do Until rs.EOF              ' пройтись по всем записям
  17.         Debug.Print rs.Fields(0) ' вывести в окно Debug содержимое поля 0 (первое поле)
  18.         rs.MoveNext
  19.     Loop


Он служит для открытия файла Baza.dbf.
Предварительно надо подключить ADO:
Project -> References -> Microsoft ActiveX Data Objects

Когда я стартую этот код, то получаю соообщение:
"The MSDN collection does not exist Please reinstall MSDN"

Мне надо MSDN-Library для Визуал Бэйсика 6 заинсталлить? Я что-то не наблюдаю его как компонент.

Ответить

Номер ответа: 29
Автор ответа:
 Arvitaly



ICQ: 301746136 

Вопросов: 28
Ответов: 549
 Web-сайт: okazani.ru
 Профиль | | #29
Добавлено: 28.07.09 11:30
Когда я стартую этот код, то получаю соообщение:
"The MSDN collection does not exist Please reinstall MSDN"


Просто старт не кнопкой F1, а кнопкой F5

Ответить

Номер ответа: 30
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #30 Добавлено: 29.07.09 12:28
Дмитрий стоитли извращаться с десятиминутными циклами если можно создать нужную тебе таблицу одним SQL запросом за 3 секунды?

Ответить

Страница: 1 | 2 | 3 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам