Anzeige
Archiv - Navigation
1348to1352
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
Inhaltsverzeichnis

Bestimmte Felder aus Recordset kopieren

Bestimmte Felder aus Recordset kopieren
26.02.2014 09:00:20
JensH.
Guten Morgen
Folgenden Code habe ich um aus einer AccessDB Datensätze zu holen und in eine Exceltabelle zu schreiben:
    strSQL = "TRANSFORM Sum(T.[SummevonSTUECK]) AS SummevonSummevonSTUECK " & _
"SELECT T.[Ausdr2] " & _
"FROM [" & B & "] AS T " & _
"GROUP BY T.[Ausdr2] " & _
"PIVOT DINKW(T.[MELDEDATUM]) In (" & Bereich & ");"
Set rst = db.OpenRecordset(strSQL, dbOpenSnapshot)
'Datensätze in Excel kopieren
objWB.Worksheets(1).Range("D" & 4) = rst.Fields(1).value
objWB.Worksheets(1).Range("E" & 4) = rst.Fields(2).value
objWB.Worksheets(1).Range("F" & 4) = rst.Fields(3).value
objWB.Worksheets(1).Range("G" & 4) = rst.Fields(4).value
objWB.Worksheets(1).Range("H" & 4) = rst.Fields(5).value
rst.close
Gibt es eine elegantere Lösung um die Felder 1-5 in die Exceltabelle zu kopieren, also mit weniger Code?
Eigentlich geht ja
CopyFromRecordset rst

aber Feld0 wird nicht benötigt und beim Versuch das in einer Schleife zu lösen habe ich mir gerade einen Knoten in den Kopf gemacht :(
Gruß
Jens

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmte Felder aus Recordset kopieren
26.02.2014 10:09:31
Martin
Hallo Jens,
ich kenne mich da leider auch nicht so gut aus. Versuche es mal so:
strSQL = "TRANSFORM Sum(T.[SummevonSTUECK]) AS SummevonSummevonSTUECK " & _
"SELECT T.[Ausdr2] " & _
"FROM [" & B & "] AS T " & _
"GROUP BY T.[Ausdr2] " & _
"PIVOT DINKW(T.[MELDEDATUM]) In (" & Bereich & ");"
Set rst = db.OpenRecordset(strSQL, dbOpenSnapshot)
'Datensätze in Excel kopieren
objWB.Worksheets(1).[D4].CopyFromRecordset rst
rst.close
Viele Grüße
Martin

AW: Bestimmte Felder aus Recordset kopieren
26.02.2014 10:12:39
JensH.
Hallo Martin, danke für deine Antwort .. aber hast du meinen Text komplett gelesen? ;)
Wenn ich das so mache wie von dir vorgeschlagen, dann bin ich wieder bei meinem ursprünglichen Problem!
rst.Fields(0) soll nicht ausgegeben werden !

Anzeige
AW: Bestimmte Felder aus Recordset kopieren
26.02.2014 14:50:42
Martin
Hallo Jens,
wie schon geschrieben, bin ich in Sachen SQL-Abfragen leider überhaupt nicht gut informiert. Aber sieh dir mal die Seite 19 folgender PDF-Datei an:
http://www.rrzn.uni-hannover.de/fileadmin/kurse/material/access/kursAccess_SQL.pdf
Das steht: Dem Befehl SELECT folgt eine Auflistung der gewünschten Felder einer Tabelle.
Man kann direkt bei der SQL-Abfrage unter Angabe der Spaltennamen festlegen welche Spalten aus der Access-Datenbank an das RecordSet übergeben werden sollen.
Viele Grüße
Martin
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige