Bartek Borczyk

Bartek Borczyk Operator liczb i
słów

Temat: ADO, COPYFROMRECORDSET, GETROWS

Mam coś w ten deseń:


Sub sADO_OLEDBJET()
'JET 4.0
'Excel 8.0

Dim strPołączenie_Treść As String
Dim conPołączenie As ADODB.Connection
Dim rcsTabela As ADODB.Recordset 'cały arkusz [arkusz_nazwa$]
Dim rcsTabela2 As ADODB.Recordset 'zakres nazwany [zakres_nazwa]
Dim rcsTabela3 As ADODB.Recordset 'zwykły zakres [arkusz_nazwa$zakres_adres]

Dim varTablica As Variant

Set conPołączenie = New ADODB.Connection

strPołączenie_Treść = "Provider=Microsoft.Jet.OLEDB.4.0;"
strPołączenie_Treść = strPołączenie_Treść & "Data Source=C:\Documents and Settings\krakoska\Pulpit\ADO Connections Examples\Ex1.xls;"
strPołączenie_Treść = strPołączenie_Treść & "Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""

'HDR=Yes/No - pierwszy wiersz zawiera nagłówki (niewyświetlany)/ nie zawiera (wyświetlany)
'IMEX=1 - wszystkie kolumny jako tekst

With conPołączenie
.ConnectionString = strPołączenie_Treść
.Open

Set rcsTabela = New ADODB.Recordset
rcsTabela.Open "SELECT * FROM [Arkusz1$];", conPołączenie, adOpenStatic
'Worksheets(2).Range("A1").CopyFromRecordset rcsTabela

varTablica = rcsTabela.GetRows
Worksheets(3).Range("A1:" & Cells(UBound(varTablica, 2) + 1, UBound(varTablica, 1) + 1).Address).Value = varTablica
'Debug.Print Worksheets(3).Range("A1:" & Cells(UBound(varTablica, 2) + 1, UBound(varTablica, 1) + 1).Address).Address

rcsTabela.Close
Set rcsTabela = Nothing

.Close
End With
Set conPołączenie = Nothing
End Sub


A teraz pytanie pierwsze: dlaczego getrows zasysa dane do varianta z transpozycją? W efekcie z tabeli (1518,6) dostaję (6,1518). Ta metoda wpienia mnie ostatnio co nie miara http://www.goldenline.pl/forum/ms-access/1170614/s/1#2....

Druga sprawa: przez copyfromrecordset otrzymuję też jakieś głupoty. Jak ustawię na hdr=no to w pierwszym wierszu czasem mam nazwę nagłówka, innym razem nie mam. Bez imexa czasem data jest datą (ma format daty) a czasem nie jest (ma format liczby).

Czy robię gdzieś głupotę, której nie widzę? Czy może moja referencja jest do bani? Próbowałem Ado od 2.5 do 2.8.

konto usunięte

Temat: ADO, COPYFROMRECORDSET, GETROWS

Bartosz Borczyk:
Mam coś w ten deseń:


I jak się skończyło ?

Następna dyskusja:

ADO recordset zwraca indeks...




Wyślij zaproszenie do