Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
440to444
440to444
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Array in Excel aus SQL füllen

Array in Excel aus SQL füllen
11.06.2004 15:08:36
Arne
Hallo Leute,
ich habe eine Frage bei der mir hoffentlich geholfen werden kann.
Ich würde gerne eine komplette Spalte aus einer SQL Datenbank ziehen (max.20 Einträge) und sie in ein Array zu schreiben, mit dem ich dann in Excel weiterarbeiten kann.
Ich weiss zwar wie ich mir einen Eintrag rausfische, aber leider nicht wie ich eine ganze Spalte in einen Array schreiben kann.

Vielen Dank im Vorraus
Arne

Sub Name()
Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim vtSql As String
Dim arrSI() As Variant
con.Open "DRIVER=SQL Server;SERVER=XXXXX"
vtSql = "SELECT GetAllTeilnehmer.Name" & "FROM_ DATENBANK.dbo.GetAllTeilnehmer"
rs.Open vtSql, con, adOpenForwardOnly, adLockReadOnly
rs.Close
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Array in Excel aus SQL füllen
11.06.2004 15:33:16
joel
hallo arne
möchtest du die tabelle in einen bereich in excel schreiben?
while rs.EOF = false
tabelle1.cells(i,1).value = rs.fields("...")
i = i+1
rs.moveNext
wend
hab die methoden des recordset nicht ausprobiert, glaube aber, dass diese so heissen, ansonsten verstehst du die absicht und kennst die richtigen methoden-namen.
gruss joel
AW: Array in Excel aus SQL füllen
11.06.2004 15:44:24
Arne
Hallo Joe,
danke für die schnelle Antwort.
Nein ich möchste sie eigentlich nicht in eine Tabelle schreiben. Ich will mit dem erhaltenen Array weiterarbeiten um ein Tabellenblatt zu sortieren.
In etwa so :)
Application.AddCustomList ListArray:=Array("test1", "test2", "test3", "test4")
und danach die Sortierung
Schönen Gruß
Arne
Anzeige
geschafft
11.06.2004 16:56:02
arne
So wens interessiert hier die Lösung :)
Und zwar umgebaut von hier http://www.devtrain.de/artikel_524.aspx
arne

Sub d()
Dim MyRSArray   '--- dieses Array wird mit dem rs gefüllt werden
Dim con As New ADODB.Connection
Dim RS As New ADODB.RecordSet
Dim vtSql As String
'--- öffnen der Connection zur DB mit übergabe des Connection-Strings
con.Open "Connection String"
vtSql = "Sql String"  '--- SQL-String übergeben
RS.Open vtSql, con
If Not RS.EOF And Not RS.BOF Then   '--- Überprüfen ob RS leer ist
AnzahlSpalten = RS.Fields.Count - 1
AnzahlZeilen = 0
ReDim MyRSArray(AnzahlSpalten, AnzahlZeilen)
Do Until RS.EOF
'--- Array-Grösse anpassen
ReDim Preserve MyRSArray(AnzahlSpalten, AnzahlZeilen)
For i = 0 To AnzahlSpalten
MyRSArray(i, AnzahlZeilen) = RS.Fields(i)
Next
AnzahlZeilen = AnzahlZeilen + 1
RS.MoveNext
Loop
End If
RS.Close
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige