Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

hallo,

ich hoffe, es kann mir jemand zu folgendem problem einen tipp geben:

ich habe mehrere abfragen, die wöchentlich nach excel exportiert und dann per email verschickt werden sollen. der export nach excel ansich ist kein problem, das hab ich mit der AusgabeIn-Funktion über ein makro gelöst. da die zahl der abfragen aber immer weiter steigt, will ich nicht jede abfrage in ein einzelnes excel-file ausgeben, sondern alle in ein file aber auf verschiedene tabellenblätter.

gibt es dafür in access eine möglichkeit (per makro oder auch per vba)?

Geschrieben

Ja das ist mit VBA möglich.

Ich habe mal aus Access heraus Excel geöffnet, Tabellenblatt erzeugt und Daten eingefügt.

Jetzt willst Du natürlich auch wissen wie es geht.

Ich muss morgen in der Firma mal nach dem Programm suchen.

Frank

Geschrieben

Hier ist mal ein kleines Beispiel. Dort wird zwar eine Datei zur Bearbeitung geöffnet aber eine neue Datei anlegen sollte ähnlich gehen.


Sub Excel_aktivieren()
Dim Excel As New Excel.Application
Dim Wbk As Excel.Workbook
Dim Wks As Excel.Worksheet

Meldung = SysCmd(acSysCmdSetStatus, "Excel wird gestartet...") 'Meldung in der Statusleiste ausgeben
Set Wbk = Excel.Workbooks.Open(Pfad_Datei)
Set Wks = Wbk.Worksheets(1)

'Excel sichtbar machen
Excel.Visible = True
Excel.StatusBar = "Tabelle wird formatiert..."

'Spalten rechts anordnen
Excel.Range("D:M").Select
Excel.Selection.HorizontalAlignment = xlRight
Excel.Selection.VerticalAlignment = xlBottom
Excel.Range("A:A").Select
Excel.Selection.HorizontalAlignment = xlRight
Excel.Selection.VerticalAlignment = xlBottom

'Überschriften eintragen
Excel.Range("A1").Select
Excel.Range("A1").Font.Bold = True
Excel.Range("A1").Value = "Feld1"
Excel.Range("B1").Value = ""
Excel.Range("C1").Value = ""
Excel.Range("D1").Value = "Feld2"
Excel.Range("D1").Font.Bold = True
Excel.Range("E1").Value = ""
Excel.Range("F1").Value = ""
Excel.Range("G1").Value = ""

Excel.Range("B2:C2").Select
Excel.Selection.Merge 'Zellen verbinden
Excel.Selection.HorizontalAlignment = xlCenter
Excel.Selection.VerticalAlignment = xlBottom

Excel.Range("B3:G3").Select
Excel.Selection.HorizontalAlignment = xlCenter
Excel.Selection.VerticalAlignment = xlBottom

Excel.StatusBar = "Spalten werden formatiert..."
'Spaltengröße automatisch einstellen
Excel.Columns("A:A").EntireColumn.AutoFit
Excel.Columns("B:B").EntireColumn.AutoFit
Excel.Columns("C:C").EntireColumn.AutoFit
Excel.Columns("E:E").EntireColumn.AutoFit
Excel.Columns("G:G").EntireColumn.AutoFit

Excel.StatusBar = "Seite wird eingerichtet..."
'Druckeinstellungen vornehmen
With Excel.ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
Excel.ActiveSheet.PageSetup.PrintArea = ""
With Excel.ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = "Seite &P von &N"
.RightFooter = ""
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
End With
Excel.Range("A1").Select

Excel.StatusBar = "Tabelle wird gespeichert..."
'Datei speichern
Wbk.Save

Excel.StatusBar = "Excel wird beendet..."
'Datei schließen
Wbk.Close

'Excel schlißen
Excel.Quit
Set Excel = Nothing

End Sub
[/code]

Frank

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...