Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Formular mit Excel verknüpfen
zurück: Balkendiagramm per VBA formatieren weiter: Datensatz automatisch erstellen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Feb 2010, 11:38
Rufname:

Formular mit Excel verknüpfen - Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

AlexS. am 25. Feb 2010 um 09:26 hat folgendes geschrieben:
Hallo,

ich habe in einem Formular ein Listenfeld und möchte anhand des/der ausgewählten Namen eine Tabelle in Excel einbinden. Also anhand eines oder mehrerer Namen sollen die zugehörigen Elemente, wenn man auf eine Befehlsschaltfläche klickt, dann in der Excel Tabelle angezeigt werden. Wie könnte ich so etwas machen? Verbinden mit Excel funktioniert ja problemlos.

Grüße
Alex

AlexS. am 26. Feb 2010 um 10:37 hat folgendes geschrieben:
Hallo,

kann mir hier wirklich niemand weiterhelfen? Hab ich mich nicht verständlich ausgedrückt? Oder soll ich die Frage im Excel Forum stellen?

Also ich wähle in einem Formular, in einem Listenfeld einen oder mehrere Namen aus (Mehrfachauswahl). Mit der Tabelle, in der die Namen stehen ist eine Tabelle verbunden in der zugehörige Gebäude stehen. Jeder Namen kümmert sich um verschiedene Gebäude und das soll mir dann in der Excel Tabelle angezeigt werden. (Welcher Namen kümmert sich um welchen Gebäude)

Gruß
Alex

Hallo nochmals,

hab hier mal noch ein Codingauszug der mich aber leider noch nicht zum Ziel geführt hat. Hab ich aus einem anderen Forumthema. Kann mir da jemand weiterhelfen? Bin nur in Java einigermaßen fit, deshalb meine Fragen:
1.Sub ExcelTeilExport sieht aus wie eine Methode die dann in der Klasse unten aufgerufen wird, oder ?
2. wie füge ich mein listenfeld aus meinem Formular ein?
3. Ich will anhand der Auswahl noch zusätzlich die zugehörigen Gebäude und weitere Daten in der Excel Tabelle habe (DLookup?)
Code:
Sub ExcelTeilExport(DatName As String, Zeile As Integer, _
                    Spalte As Integer, AktWert As String, _
                    Optional AktBlatt As String)
    Dim xlApp As Object, xlBook As Object, xlSheet As Object
    Dim i As Integer

    On Error Resume Next
    Set xlApp = GetObject(, "Excel.Application")
    If xlApp Is Nothing Then
        Set xlApp = CreateObject("Excel.Application")
    End If
    On Error GoTo 0
    Set xlBook = xlApp.Workbooks.Open(DatName)
    If Len(AktBlatt) > 0 Then
        Set xlSheet = xlBook.Sheets(AktBlatt)
      Else
        Set xlSheet = xlBook.ActiveSheet
    End If
    xlSheet.Cells(Zeile, Spalte).Value = AktWert
    xlBook.Save
    xlBook.Close
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
End Sub

'Der Aufruf erfolgt dann in der Art:
'Exportieren eines Listenfeldes von Access nach Excel
Private Sub Befehl9_Click()
    Dim ctl As Control, varItem As Variant
    Dim AktWert As String, ExcelZeile As Integer
   
    Set ctl = Me!LM_Auswahl
    For Each varItem In ctl.ItemsSelected
        ExcelZeile = ExcelZeile + 1
        AktWert = ctl.Column(0, varItem) ' 1. Spalte
        AktWert = ctl.Column(1, varItem) ' 2. Spalte
        'AktWert = ctl.Column(2, varItem) ' 3. Spalte
        Debug.Print AktWert
        ExcelTeilExport "C:\Users\...\mytest.xls", ExcelZeile, 1, AktWert
    Next varItem
    MsgBox "Fertig"
End Sub
Vielen Dank vorab.
Grüße
Alex
steffen0815
VBA-Programmierer


Verfasst am:
28. Feb 2010, 12:06
Rufname:


AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hallo,
ExcelTeilExport ist eine ganz normale (benutzerdefinierte) Prozedur.

Ansonsten ist deine Anforderung ziemlich unverständlich.

Meiner Meinung nach ist im Moment nicht Excel das Problem.

Du musst deine zu exportierenden Daten erst mal in Access zusammenstellen.
Wenn du dann eine Accessabfrage hast, die deine gewünschten Daten präsentiert (Gebäudedatensätze!?), kann man über einen Export nachdenken.

Wie werden denn deine Daten zur Zeit präsentiert. So wie ich es verstanden habe, sollte man doch im Hauptformular den Namen wählen und in einem Unterformular alle zugehörigen Gebäude angezeigt bekommen.

_________________
Gruß Steffen
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Feb 2010, 12:34
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hallo Steffen,

danke schon mal für die Antwort. Bisher habe ich es so gemacht, dass ich in einem Listenfeld den Namen (mit Mehrfachauswahl) auswähle und dann einen Bericht fahre in dem mir dann die zugehörigen Daten angezeigt werden. Anstatt des Berichts soll nun aber eine Excel tabelle angezeigt werden. Die Idee mit dem UFO hört sich gut an, aber wie würde es dann weitergehen? Hättest du da eine Lösung?

Gruß
Alex
steffen0815
VBA-Programmierer


Verfasst am:
28. Feb 2010, 13:56
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hallo,
du brachst das UFO nicht, du kannst die Datenherkunft deines Berichtes nutzen.

Wie lautet diese und wie rufst du den Bericht?

_________________
Gruß Steffen
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. März 2010, 09:47
Rufname:


AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

AlexS. am 01. März 2010 um 05:50 hat folgendes geschrieben:
Hallo Steffen,

als Grunglage für den Bericht habe ich die Abfrage qry_LM_WE. Für die Schlüsselspalte (LM_ID) habe ich als Kriterium [Formulare]![fmr_LM_WE].[nameListenfeld] eingetragen, damit der Verweiß zum listenfeld hergestellt ist. Hierzu schon mal eine Frage: Ich habe im Listenfeld Mehrfachauswahl auf Einzeln gesetzt, wie kann ich das in meine Abfrage einbauen oder wo muss es hinterlegt sein?
Für das Listenfeld habe ich eine Abfrage die mir anhand der LM_ID den Namen ausgibt. Wie kann ich den Bericht für Excel verwenden?

Grüße
Alex

Hallo nochmals an alle,

kann mir hier bitte jemand weiterhelfen? Ist echt dringend. Danke.

Grüße
steffen0815
VBA-Programmierer


Verfasst am:
01. März 2010, 10:36
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hallo,
ja dann exportiere doch die Abfrage "Abfrage qry_LM_WE".
UNGETESTET:
Code:
Option Compare Database
Option Explicit

Sub Export2Excel()
    Dim xlAnw As Object
    ' Verweis auf Microsoft DAO x.x setzen
    Dim db As DAO.Database, qry As DAO.QueryDef, rs As DAO.Recordset
   
    Set db = CurrentDb
    Set qry = db.QueryDefs("Abfrage qry_LM_WE")
    qry.Parameters(0) = Forms![fmr_LM_WE].[nameListenfeld]
    Set rs = qry.OpenRecordset
    rs.MoveFirst
    Set xlAnw = CreateObject("Excel.Application")
    xlAnw.Workbooks.Add
    xlAnw.Visible = True
    xlAnw.Range("A1").CopyFromRecordset rs
    rs.Close
End Sub

_________________
Gruß Steffen
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. März 2010, 11:12
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hey,

VBA zeigt Fehlermeldung:
qry.Parameters(0)=<Element in dieser Auflistung nicht gefunden>
nach Welchem element wird da gesucht? Das 0 te Element aus dem Listenfeld?

Gruß
steffen0815
VBA-Programmierer


Verfasst am:
01. März 2010, 11:21
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hallo,
Zitat:
habe ich die Abfrage qry_LM_WE. Für die Schlüsselspalte (LM_ID) habe ich als Kriterium [Formulare]![fmr_LM_WE].[nameListenfeld] eingetragen
Ich nahm an, du hast eine Parameterabfrage mit Kriterium [Formulare]![fmr_LM_WE].[nameListenfeld]. So schein es wohl nicht zu sein Confused .

Wie lautet der SQL-Code deiner Abfrage und wie rufst du den Bericht?

Ich gehe davon aus, dass dein Bericht funktioniert und die Daten des Berichtes exportiert werden sollen!

_________________
Gruß Steffen
ebs17
Learning by Doing - Bastler


Verfasst am:
01. März 2010, 11:29
Rufname:
Wohnort: Reinsberg

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

AlexS. hat folgendes geschrieben:
Ich habe im Listenfeld Mehrfachauswahl auf Einzeln gesetzt
Ein Listenfeld mit Mehrfachauswahl dürfte in jedem Fall ausschließlich Null als Rückgabewert liefern. Das würde auch den genannten Fehler erklären.

Hier müsste man die ausgewählten Einträge per VBA auslesen und übergeben.

_________________
Mit freundlichem Glück Auf!

Eberhard
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. März 2010, 12:01
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Hallo Steffen,

Das ist die SQL Abfrage qry_LM_WE. Auf dieser beruht der Bericht:
Code:
SELECT   t_LM.Vorname, t_LM.Nachname_LM, t_WE.WE, t_WE.Art, t_WE.Bemerkung,
         t_LM.[LM-Nr]
FROM     t_LM
         INNER JOIN t_WE
         ON t_LM.[LM-Nr] = t_WE.[LM-Nr]
WHERE    t_LM.[LM-Nr]=[Forms]![fmr_LM_WE].[LM-Auswahl]
ORDER BY t_LM.Vorname, t_LM.Nachname_LM, t_WE.WE;
Das ist die SQL für das Listenfeld:
Code:
SELECT   [LM-Nr], Nachname_LM
FROM     t_LM
ORDER BY Nachname_LM;
Der Bericht funktioniert einwandfrei. Er würd über die den Button Berichtvorschau geöffnet. Lediglich die Mehrfachauswahl wird nicht übernommen und ich weiß auch nicht wie ich das in den VBA Code einfügen könnte, wahrscheinlich über einen Schleife.

Danke
Nachtrag: AlexS. am 01. März 2010 um 11:03 hat folgendes geschrieben:
Hallo Eberhard,

wie könnte man die Mehrfachauswahl ins VBA Coding einbauen?

Grüße
ebs17
Learning by Doing - Bastler


Verfasst am:
01. März 2010, 14:17
Rufname:
Wohnort: Reinsberg

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Code:
Sub Export2Excel()
    Dim oXL         As Object
    Dim oWb         As Object
    Dim rs          As DAO.Recordset
    Dim varItem     As Variant
    Dim strListe    As String
    Dim strSQL      As String
   
    For Each varItem In Me!nameListenfeld.ItemsSelected
        strListe = strListe & "," & Me!nameListenfeld.ItemData(varItem)
    Next varItem
    If Len(strListe) > 0 Then
        strListe = "(" & Mid(strListe, 2) & ")"
      Else
        MsgBox "Keine Auswahl"
        Exit Sub
    End If
    strSQL = "SELECT t_LM.Vorname, t_LM.Nachname_LM, t_WE.WE, t_WE.Art," _
                 & " t_WE.Bemerkung, t_LM.[LM-Nr]" _
            & " FROM t_LM" _
                 & " INNER JOIN t_WE" _
                 & " ON t_LM.[LM-Nr] = t_WE.[LM-Nr]" _
           & " WHERE t_LM.[LM-Nr] IN " & strListe _
        & " ORDER BY t_LM.Vorname, t_LM.Nachname_LM, t_WE.WE"
    Set rs = CurrentDb.OpenRecordset(strSQL)
    Set oXL = CreateObject("Excel.Application")
    Set oWb = oXL.Workbooks.Add
    oWb.Worksheets(1).Name = "Daten"
    oWb.Worksheets(1).Cells(1, 1).CopyFromRecordset rs
    oXL.Visible = True
    rs.Close
    Set rs = Nothing
    oWb.SaveAs FileName:="X:\verz\kopie.xls"
    'oWb.Close
    'oXL.Quit
    Set oWb = Nothing
    Set oXL = Nothing
End Sub

_________________
Mit freundlichem Glück Auf!

Eberhard
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. März 2010, 14:49
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

AlexS. am 01. März 2010 um 13:42 hat folgendes geschrieben:
Eberhard, vielen Dank. Funktioniert einwandfrei. Danke

Einmal muss ich doch noch nerven, wie kann ich die Überschriften der Abfrage mit übernehmen und die Zellengröße in Excel verändern?
ebs17
Learning by Doing - Bastler


Verfasst am:
01. März 2010, 15:09
Rufname:
Wohnort: Reinsberg

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Code:
    Dim i As Long
    '...
    For i = 0 To rs.Fields.Count - 1
        oWb.Worksheets(1).Cells(1, i + 1) = rs.Fields(i).Name
    Next i
    oWb.Worksheets(1).Cells(2, 1).CopyFromRecordset rs
Bezüglich Formatierung der Excelzellen führst Du am besten diese Aktionen in Excel aus und machst eine Aufzeichnung mit dem Makrorekorder. Diese Aufzeichnung wäre dann eine Ausgangsbasis für den zusätzlichen Code.
Dabei sollte ein sauberer Objektbezug nicht vergessen werden:
ActiveSheet ersetzen durch oWb.Worksheets(1)

_________________
Mit freundlichem Glück Auf!

Eberhard
AlexS.
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. März 2010, 15:36
Rufname:

AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Was ist denn eine Aufzeichnung mit dem Makro Rekorder? Das ist mir ganz neu.
ebs17
Learning by Doing - Bastler


Verfasst am:
01. März 2010, 16:39
Rufname:
Wohnort: Reinsberg


AW: Formular mit Excel verknüpfen - AW: Formular mit Excel verknüpfen

Nach oben
       Version: Office 2003

Zitat:
Das ist mir ganz neu.
... und vermutlich nicht das letzte Neue.
In diesem Fall empfehle ich das Lesen der (hier Excel-)Hilfe.

Übrigens ist das Nachschlagen in der jeweiligen Hilfe sowie eine Eigenrecherche auf der Basis einer Suche (Google & Co.) Grundtätigkeit und -fertigkeit eines Entwicklers mit einigermaßen ernsthaftem Hintergrund: Bevor du fragst

_________________
Mit freundlichem Glück Auf!

Eberhard
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Filtern und aktualisieren in ein Formular 4 gokima 989 18. Apr 2012, 04:49
Joe66-1 Filtern und aktualisieren in ein Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Tabellenteile mit Excell verknüpfen 2 Tom82 579 15. Feb 2005, 10:27
Tom82 Tabellenteile mit Excell verknüpfen
Keine neuen Beiträge Access Tabellen & Abfragen: mehrer abfragen ein formular 1 romu 719 10. Jan 2005, 15:54
lothi mehrer abfragen ein formular
Keine neuen Beiträge Access Tabellen & Abfragen: Formeln vom Formular, werden in der Abfrage nicht angezeigt 4 maddes 895 23. Nov 2004, 12:38
Skogafoss Formeln vom Formular, werden in der Abfrage nicht angezeigt
Keine neuen Beiträge Access Tabellen & Abfragen: Zeile der Dateneingabe (*) in einem Formular verschieben 2 Albertus 790 08. Okt 2004, 09:17
Albertus Zeile der Dateneingabe (*) in einem Formular verschieben
Keine neuen Beiträge Access Tabellen & Abfragen: Suchfunktion mit mehreren Kriterien aus Formular 5 Danny G. 2218 09. Sep 2004, 11:08
Danny G. Suchfunktion mit mehreren Kriterien aus Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Access 97 verknüpfen mit Paradox 1 inaduob1970 576 06. Sep 2004, 14:28
Skogafoss Access 97 verknüpfen mit Paradox
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle, Formular, Abfrage...und nun ? 3 Gags 790 29. Aug 2004, 22:05
lothi Tabelle, Formular, Abfrage...und nun ?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragefeld nachträglich in Formular 3 Sebbl 1705 05. Aug 2004, 15:14
mabe38 Abfragefeld nachträglich in Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Formular aus Endlosformular öffnen ? 10 G-Markus 1619 20. Jul 2004, 15:38
Gast Formular aus Endlosformular öffnen ?
Keine neuen Beiträge Access Tabellen & Abfragen: 2 gleiche Tabellen in 2 verschiedenen DB verknüpfen 2 mondi 1015 23. Jun 2004, 10:10
mondi 2 gleiche Tabellen in 2 verschiedenen DB verknüpfen
Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Access Tabellen & Abfragen: Mehrmalige Abfrage durch Formular 11 Wickiman 897 03. Mai 2004, 15:23
Willi Wipp Mehrmalige Abfrage durch Formular
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Project