Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Access Daten in bestimmtes Excel Feld ausgeben

Frage Microsoft Microsoft Office

Mitglied: Valume91

Valume91 (Level 1) - Jetzt verbinden

08.12.2009 um 13:17 Uhr, 19216 Aufrufe, 12 Kommentare

Wie kann ich einen DS in Access per Button in ein bestimmtes Feld in einer Excel Datei einfügen?

Tag zusammen

Ich habe ein Formular in Access (frm_Hauptfehlermeldung).
Nun soll per Button der aktuelle DS in bestimmte Felder einer Excel Datei eingefügt werden.
Also z.B. :
Fehler1 --nach--> B3
Fehler2 --nach--> C2
usw.

Geht das? Und wenn ja, wie?

Lg Valume
Mitglied: 83928
08.12.2009 um 15:30 Uhr
Ja geht. Such mal nach "CreateObject" in der Officehilfe. Da ist AFAIK auch ein Codebeispiel.
Ansonsten wär es für eine Antwort nicht schlecht zu wissen welche Versionen Du ......................
Bitte warten ..
Mitglied: Valume91
08.12.2009 um 16:16 Uhr
Hi abaaba

Erstmal danke für die Antwort!
Ich habe mir den Createobject Befehl mal angesehen. Jedoch werde ich nicht richtig schlau daraus...
Ein konkretes Beispiel wäre nett.

Gruss Valume

Edit:
Ich verwende MS Access 2003 mit Microsoft Visual Basic 6.0
Bitte warten ..
Mitglied: 83928
08.12.2009 um 16:23 Uhr
Ich schau nachher mal ob ich was finde.
Excel ist auch 2003? Tabelle/Mappe soll neu angelegt werden oder besteht schon?
Bitte warten ..
Mitglied: Valume91
08.12.2009 um 16:29 Uhr
Hi

Ja Excel ist auch 2003. Tabelle/Mappe Bestehen schon.
Die gewünschten Felder sollen "einfach" aus Access abgefüllt werden.

Gruss Valume
Bitte warten ..
Mitglied: 83928
08.12.2009 um 19:26 Uhr
Hier der leicht abgeänderte Code aus der Hilfe



Dim xlAnw As Excel.Application
Dim xlBuch As Excel.Workbook
Dim xlArbBlatt As Excel.WorkSheet

Set xlAnw = CreateObject("Excel.Application")
Set xlBuch = xlAnw.Workbooks.Open("c:\dest.xls") 'Die Excel-Datei öffnen
Set xlArbBlatt = xlBuch.Worksheets(1) 'erstes Sheet

xlArbBlatt.Range("A1").Value = "Test" 'In Zelle A1 einen Wert eintragen


xlBuch.Save
xlAnw.Quit

Set xlBuch = Nothing
Set xlArbBlatt = Nothing
Set xlAnw = Nothing


Edit: Du musst unter ->Extras-> Verweise im VBA-Editor ein Hacken bei Mircrosoft Excel Object library (oder so ähnlich) machen
Bitte warten ..
Mitglied: Valume91
09.12.2009 um 08:32 Uhr
Danke! Ich probiers gleich aus.
Bitte warten ..
Mitglied: Valume91
09.12.2009 um 14:58 Uhr
Hi abaaba

Hat prima funktioniert! Besten Dank!
Jetzt muss ich noch herausfinden wie ich die im Formular
eingebundenen Endlosunterformulare exportieren kann.

lg Valume
Bitte warten ..
Mitglied: 83928
09.12.2009 um 15:22 Uhr
Erstell Dir ein Recordset-objekt, fülle es mit Daten und benutze die copyFromRecordset-Methode um die Daten einzufügen.

Hier ein paar Beispielzeilen (aus einem Excel-Makro) was die Daten aus einer Access97-DB holt


Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset

cn.Provider = "Microsoft.Jet.OLEDB.4.0"
cn.ConnectionString = "Data Source=\\Server\Datenbank.mdb"
cn.Open
strSQL = "SELECT * from Blablabla"
With rs
.CursorType = adOpenDynamic
.LockType = adLockPessimistic
.CursorLocation = adUseClient
.Open strSQL, cn
End With
Cells(4, 1).CopyFromRecordset rs
Bitte warten ..
Mitglied: Valume91
14.12.2009 um 08:41 Uhr
Hi abaaba

Danke für deine Hilfe!
Ich verstehe jedoch nicht ganz:
- Wo soll ich den Code einfügen? Access oder Excel?
- Wenn Excel, wie mache ich das da? Ich hab bisher nur mit Access VBA gearbeitet

Gruss Valume

Edit sagt:
Ich bräuchte das ganze natürlich für Access bzw. Excel 2003, ändert sich dabei am Code etwas?
Bitte warten ..
Mitglied: Valume91
14.12.2009 um 09:51 Uhr
Hey abaaba

Ich hab jetzt mal was von einem alten Code genommen und diesen angepasst:

01.
Dim db As DAO.Database 
02.
Dim rs As DAO.Recordset 
03.
Dim strSQL 
04.
Set db = CurrentDb 
05.
 
06.
strSQL = "select * from [Ufrm_Mangelbeschreibung] where [QFall_IDFS]=" & Me.Qnummer 
07.
Set rs = db.OpenRecordset(strSQL)
Passt der Code soweit?
Wie kann ich jetzt den Inhalt dieser Abfrage in Excel exportieren? (in bestimmte Felder wie gewohnt)
Bitte warten ..
Mitglied: 83928
14.12.2009 um 10:05 Uhr
Hallo,
ich versuchs mal auf die Schnelle, da grade wenig Zeit.

Du hast Dir in Access VBA ja schon ein Recordset erstellt. Nun einfügen mit der "copyFromRecordset". Ist eine Methode vom (Excel)-Range Objekt. Kannst Du via Access über den Verweis "Microsoft Excel libary" zugänglich machen (s.o)


Dim xlAnw As Excel.Application
Dim xlBuch As Excel.Workbook
Dim xlArbBlatt As Excel.WorkSheet

Set xlAnw = CreateObject("Excel.Application")
Set xlBuch = xlAnw.Workbooks.Open("c:\dest.xls") 'Die Excel-Datei öffnen
Set xlArbBlatt = xlBuch.Worksheets(1) 'erstes Sheet

xlArbBlatt.Range("A1").CopyFromRecordset rs
Bitte warten ..
Mitglied: Valume91
14.12.2009 um 10:17 Uhr
abaaba mein Held!!
Funktioniert einwandfrei!

xlArbBlatt.Range("A1").CopyFromRecordset rs
War das was ich noch benötigte!

Nochmals vielen Dank!

Gruss Valume
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
CSV export von PDF Feldern nach Excel (5)

Frage von NachwuchsITler zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel 2010 Makro Ausgabe in bestimmter Tabelle ausgeben (6)

Frage von dressa zum Thema Microsoft Office ...

VB for Applications
Bestimmte Daten aus eine CSV-Datei in eine Excel-Tabelle importieren (2)

Frage von MariaElena zum Thema VB for Applications ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Seekrank bei Windows 10 (18)

Frage von zauberer123 zum Thema Windows 10 ...

Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Windows 10 Fall Creators Update Fehler (13)

Frage von ZeroCool23 zum Thema Windows 10 ...