Anzeige
Archiv - Navigation
448to452
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
448to452
448to452
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Monatliche Speicherung von Lagerdatei

Monatliche Speicherung von Lagerdatei
02.07.2004 23:58:03
Lagerdatei
Guten Abend,
ich habe folgendes Problem. Ich möchte aus meinem Lager- und Kassenprogramm Monatlich(zum1.) eine Kopie des Lagerbestandes (1Blatt 600 Artikel 10 Spalten)machen, diese soll in einem nach Monat und Jahr benannten Blatt abgelegt werden.Wie bekomme ich das mit wenig aufwand hin.Danke schon mal im voraus.(meinVBA ist Basic ;-))
Andreas

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Monatliche Speicherung von Lagerdatei
03.07.2004 08:38:46
Lagerdatei
Hallo Andreas,
folendes Makro kopiert das erste Tabellenblatt an die letzte Stelle und vergibt ihm den entspr. Namen.
(du kannst den Code auch über das Workbook_Open-Ereignis ausführen lassen)
Gruß Christoph
Option Explicit

Sub SicherungMonat()
Dim i as Integer
For i = 1 To Sheets.Count
If Sheets(i).Name = Format(Date, "MMM-YY") Then Exit Sub
Next i
If Date Like "01.*" Then
Sheets(1).Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = Format(Date, "MMM-YY")
End If
End Sub

AW: Monatliche Speicherung von Lagerdatei
Lagerdatei
Hallo Christoph,
Du meinst mit dem ersten Blatt sicherlich meine Lagerdatei!?(da ich in VBA nicht so den überblick:-) habe)
Ich hätte da noch eine Frage,
wenn ich jetzt von jedem dieser erzeugten Blätter(Monatsraport)ein Diagram erzeugen will,
das auch in diesem BLatt erscheint, wie bekomme ich das hin?
Ich habe schon ein Musterdiagram auf einem Extrablatt.
Aber bis hier her erst mal vielen dank, für die so schnelle beantwortung meiner
Frage.
Ich bin ganz beeindruckt!
Ich kann dies erst morgen ausprobieren ob das so funktioniert.
;-)
Andreas
Anzeige
Datei vs Tabellenblatt
03.07.2004 11:37:43
Christoph
Hallo Andreas,
Eine Datei ist eine Datei. (also zB mit dem Namen Test.xls)
Eine Exceldatei hat i.d.R mehrere Tabellenblätter (Tabelle1, Tabelle2, oder wie auch immer du sie genannt hast)
Mein Code kopiert das erste Tabellenblatt (also das ganz links) an die letzte Stelle (also nach ganz rechts) innerhalb dieser Datei. Es wird keine neue Datei erstellt, sondern ein neues Tabellenblatt.
Zu deiner Frage mit dem Diagramm:
Ich würde dieses Diagramm jeweils per VBA neu erzeugen, da auch die Datenquelle jeweils angepasst werden muss. Den Code hierzu nimmst du am besten mit dem Makrorecorder auf.
Gruß
Christoph
Anzeige
AW: Datei vs Tabellenblatt
Andreas
Hallo Christoph M,
natürlich hast du recht, mir ist da ein Fehler unterlaufen Ich meinte natürlich das Lagerblatt innerhalb meines Lager- und Kassenprogramm’s.
Vielen Dank für deine Antworten, ich habe jetzt nur noch eine letzte Frage dies bezüglich.
Um mir die Analyse zu ersparen was bei mir am meisten geht und was nicht(welche Artikel und die werden ja ständig mehr), wie kann ich in
das neue Datenblatt (Monatsraport oder an die Graphische Darstellung) die Möglichkeit einbauen, dass nur die Daten extrahiert werden die sich verändert haben?
Vielen Dank.
Gruß
Andreas
Anzeige
AW: Monatliche Speicherung von Lagerdatei
Lagerdatei
Option Explicit

Sub SicherungMonat()
Dim i as Integer
For i = 1 To Sheets.Count
If Sheets(i).Name = Format(Date, "MMM-YY") Then Exit Sub
Next i
If Date Like "01.*" Then
Sheets(1).Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = Format(Date, "MMM-YY")
End If
End Sub

Hallo Christoph M!
Vielen Dank für deine Antwort.
Habe gerade dein Code getestet, mache ich was falsch?
Ich habe ihn in der Arbeitamappe(VBA) eingegeben, dann im Blatt, habe dann im Datum (system) einen Monat verstreichen lassen aber nix passierte.
Mache ich einen Fehler?
Abschließend eine Frage, wie erreiche ich, das nur die Daten Monatlich gespeichert werden die sich verändert haben?
Gruß
Andreas
Anzeige
AW: Monatliche Speicherung von Lagerdatei
05.07.2004 19:47:08
Lagerdatei
Hallo Andreas,
ich seh, du hast dir bereits über ein weiteres Posting Hilfe geholt.
http://xlforum.herber.de/messages/450377.html
(allerdings kann ich mit deiner Datei auf dem Server wenig anfangen).
Wie auch immer - zu deiner ursprünglichen Frage:
ich habe im meinem Code zwei Bedingungen eingebaut.
zum einen:
nur, wenn es ein Tabellenbaltt mit dem Namen "MMM-YY" (entspricht also jetzt "Jul-04") noch nicht gibt, dann kopiere das erste Tabellenblatt.
zum anderen:
wenn heute der erste eines Monats ist (If Date Like "01.*" Then), dann kopiere das erste Tabellenblatt.
nur wenn beide Bedingungen zutreffen, passiert etwas.
Wenn du dies zB nur auf die erste Bedingung beschränken willst, dann schreib:
Sub SicherungMonat()
Dim i as Integer
For i = 1 To Sheets.Count
If Sheets(i).Name = Format(Date, "MMM-YY") Then Exit Sub
Next i
Sheets(1).Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = Format(Date, "MMM-YY")
End Sub
wenn dieser Code automatisch beim Öffnen der Datei ausgeführt werden soll, dann öffne den VBA-Editor (mit Strg +F11) und klicke auf "diese Arbeitsmappe".
Hier setzt du den folgenden Code ein (dann brauchst den obigen nicht mehr):

Private Sub Workbook_Open()
Dim i as Integer
For i = 1 To Sheets.Count
If Sheets(i).Name = Format(Date, "MMM-YY") Then Exit Sub
Next i
Sheets(1).Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = Format(Date, "MMM-YY")
End Sub

speichern - schließen - und beim nächsten Öffnen wird er ausgeführt (solange die Bedingungen s.o. erfüllt sind, passiert dann auch was)
Guß
Christoph
PS: hiermit betrachte ich diesen Thread als geschlossen, da das Problem bereits in einem weiteren bearbeitet wird)
Anzeige
AW: Monatliche Speicherung von Lagerdatei
05.07.2004 20:14:26
Lagerdatei
Vielen Dank.
Sehr nett, dass du mir weitergeholfen hast.
Gruß
Andreas
Danke für die Rückmeldung (o.T.)
05.07.2004 20:45:27
Christoph

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige