Clever-Excel-Forum

Normale Version: Access nach Excell exportieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4
Hallo @all.

Wenn möglich würde ich gerne den Export einer (wählbaren) Datenbank - habe 2, HAUSakt und HAUSsteu - automatisieren. Es geht natürlich über Externe Daten/Excell, nett wäre ein lauffähiges Makro. Wobei noch anzumerken ist, dass ich zwar rudimentäre Erfahrung habe, das Meiste ist aber leider in Vergessenheit geraten. Ich habe zwar noch den "Jahreswechsel" am laufen: neue DB wird erstellt, Struktur von HAUSakt, HAUSakt wird in HAUSsteu umbenannt, HAUSsteu in HAUSxx - wobei xx der Jahreszahl -2 entspricht - das wars aber mit Kenntnissen.

Jemand eine brauchbarer Idee? Danke schon mal.
Code:
Option Compare Database
Option Explicit

Function jahrwechsel()


'HAUSsteu, wird HAUS<Jahr-2>, HAUSakt wird HAUSsteu, neues HAUSakt aus Kopie HAUSsteu

Dim mldg$, voreinst$, Monatswert$, JahrJetzt$, JahrAlt$, MonatJetzt$, JahrDiff%, JahresDiff%, TabName$
Dim Jahreswert As String, M As Date, JahrSteuNeu$   ', T As Date, Tag%

Dim db As Database, tdf As TableDef, Derzeit As Date
Dim T As Recordset, T1 As Recordset
'Dim mldg"$
Set db = CurrentDb()

'If JahrAlt = Jahreswert - 1 Then
   Set T = db.OpenRecordset("HAUSakt")
       Derzeit = T![DATUM]
       JahrAlt = Mid$(Derzeit, 7, 4)
   T.Close
'End If

Monatswert = Mid$(Now, 4, 2)
Jahreswert = Mid$(Now, 7, 4)
JahrJetzt = Jahreswert
MonatJetzt = Monatswert
JahrSteuNeu = Right$(JahrAlt - 1, 2)




If JahrAlt = Jahreswert - 1 Then
   DoCmd.Rename "HAUS" & JahrSteuNeu, acTable, "HAUSsteu"
   DoCmd.Rename "HAUSsteu", acTable, "HAUSakt"
   DoCmd.CopyObject , "HAUSakt", acTable, "HAUSsteu"
   Löschen ("HAUSakt")
End If


mldg = MsgBox("HAUSakt replizieren!", , "Achtung")

End Function
Sub Löschen(Tabelle)

Dim db As Database, T As Recordset
Dim intI%
   
Set db = CurrentDb()
Set T = db.OpenRecordset(Tabelle)
T.MoveLast                                ' Recordset-Objekt auffüllen.
T.MoveFirst                               ' Zum ersten Datensatz zurückkehren.
For intI = 1 To T.RecordCount
   T.MoveFirst
   T.Delete
Next intI
T.Close

End Sub
Und hier der Code dazu.
Moin, moin

welchen Zweck verfolgst du damit?
Nachbearbeitung. In Excel wird nach Zeit - Monate - und Rubrik sortiert.
das könnte man auch über eine Abfrage in Access realisieren
Ja, danke. Nur: wie? Meine Access-Kenntnisse liegen schwer darnieder...
Hallöchen,

mit SQL im Prinzip so:
select * from table order by Datum, Rubrik desc
(oder asc, ist glaube Standard - Chance 50% Wink
Danke André. Ist der " é " an der richtigen Stelle? Da habe ich - auch - immer Probleme mit.

Und nicht nur mit SQL, hatte ich früher auch schon angewendet. Als ich noch beruftätig war hatten wir eine große Datenbank - Name ist auch weg - an die man aber mit Access drankam, da hatte ich schon auch mit SQL "gespielt". Ist aber leider alles weg. Und bei meinen gespeicherten Abfragen ect. ist SQL leider nicht dabei. Im Prinzip könnte ich vermutlich noch damit umgehen, aber wie erstellen und wohin das ist alles den "Weg allen irdischen" gegangen, also weg.

Hihi, der " é " war ja richtig, das war die 50%-Change von der du geredet hast... Vermutlich...
Hallo Charly,

da muss ich dann aber auch passen, Access ist bei mir auch gut 20 Jahre her Sad
hallo Andrè,

es klappt leider nicht. Habe jetzt aus Altbeständen Abfrage, Formular, Bericht und Modul soweit angepasst, dass beim Modulstart auch die Access-Datei geschrieben wird, jedoch - Excell mit richtigem Dateinamen wird noch erzeugt, ist aber leer.
Seiten: 1 2 3 4