# Daten von Access nach Excel



## FTUK (29. November 2004)

Also was Access VBA angeht bin ich ein frischling 
somit habe ich einige fragen

1.Wie kann man ein geschriebenes makro per tasten kompination aufrufen so wie in Excel

2.wie kann ich ein datensatz aus access einlesen
bei excel ist es ja Workbook().Sheet().Range().value() 
denke mir muessete bei access aehnlich sein

3.Wie kann man ein neues Excel workbook aus Access oeffnen?

so das ist erst mal das wichtigste wenn ich selber antworten finde 
werde ich sie mal hier rein posten


----------



## Filone (29. November 2004)

1. k.A.

2. Recordset.Open

3. Dim xlA As Excel.Application
    Dim xlWb as Excel.Workbook
    Set xlA = New Excel.Application
    Set xlWb = Xla.Workbooks.Add


----------



## FTUK (29. November 2004)

ok das mit dem Excel ist klar aber das mit dem Recordset... also moechte ungern die hilfe hier reinkopieren da ich aus der hier net wirklich schlau werde aber ein kleines Bsp. wuerde mir sehr helfen...

angenommen:
Tabele1 mit felder Name Vorname Geb

nun moechte ich alle datensaetze durchgehen
und per msgbox immer den namen ausgeben...

also was ganz simples wie sieht dazu der quelltext aus...

kann auch sein 

name = "leer"
i = 1
while name <> ""
Name = 'aus access tabel1 auslesen an stelle i
msgbox name
i=i+1
wend

tja nun brauche ich nur noch den befehl um aus der tabelle ein bestimten wert auszulessen
....
thx in vorraus


----------



## Filone (30. November 2004)

Ja, wenn Du mehrere Datensätze (Recordsets) hast, dann kannst Du sie mit einer Schleife durchlaufen.

Die einzelnen Felder eines Recordsets kannst Du (glaube ich, bin mir nicht sicher) mit Field() ansprechen. Ansonsten bietet die Hilfe noch super Beispiele für den Datenzugriff, ich habe jetzt keine Zeit es lokal zu testen.


----------



## FTUK (30. November 2004)

Also haben den durchbruch geschaft 
und was stellt sich heraus das ich das alles schon mal vor ca 4 jahren gemacht 
habe nur eben mit VB6 und net mit Access und VBA aber ist gleich... 
also hier der quelltext um eine DB zu durchsuchen und einzelne felder
auszulesen


```
Private Sub Befehl21_Click()
On Error GoTo fehler
Dim DB As Database
Dim RS As Recordset
Set DB = CurrentDb()
Set RS = DB.OpenRecordset("Daten", dbOpenSnapshot)
RS.MoveFirst
While Not (RS.EOF)
	MsgBox RS(1).Value 'Die 1 steht fuer den feld index 
	
	RS.MoveNext
Wend
ende:
	Exit Sub
	
fehler:
	MsgBox Err.Description
	Resume ende
	
End Sub
```
 
hoffe das ich evt auch anderen damit helfen konnte


----------

