Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
652to656
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
652to656
652to656
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

@Matthias G: Noch ein paar Änderungen und Fragen

@Matthias G: Noch ein paar Änderungen und Fragen
22.08.2005 10:24:47
Daniel
Hallo Matthias,
ich hoffe du hattest ein schönes Wochenende!?!?
Ich habe mir nun die Datei angesehen und habe ein paar Fragen sowie kleine Änderungswünsche.
Das Makro würde ich doch lieber gerne manuell per Knopfdruck starten und nicht wie im Beispiel automatisch nach dem Öffnen der Datei.
Dafür soll beim Öffnen der Datei eine Messagebox kommen.
Hat das Blatte "Namen" ein spezielle Funktion? Zieht er sich da die Dateinamen?
Falls ja: Wo kann ich das im Code auf ein anderes Blatt abändern?
Wie mache ich das wenn ich neue Dateien hinzufügen möchte, aus denen Daten geholt werden? Was muss ich im makro ändern?
Nach dem Durchlauf des "Daten holens" möchte ich noch eine weitere Berechnung hinzufügen, die direkt im Anschluss stattfinden soll.
Das Makro dazu ist eine andere Geschichte. Aber wo muss ich das ins aktuelle Makro einfügen? Einfach ganz am Ende?
Auf jeden Fall Tausend Dank für Deine großzügige Hilfe!
Beste Grüße,
Daniel

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
22.08.2005 16:11:27
Matthias
Hallo Daniel,
ich hab die Frage registriert, habe im Moment aber keine Zeit.
Ich werde wohl frühestens morgen dazu kommen, dir zu antworten.
Gruß Matthias
AW: @Matthias G: Noch ein paar Änderungen und Frag
22.08.2005 16:49:38
Daniel
Super! Danke für die Rückmeldung!
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 05:58:31
Hajo_Zi
Hallo Daniel,
ich würde
"Super! Danke für die Rückmeldung!" nun so interpretieren das dies Problem gelöst ist warum ist der Beitrag dann als offen gekennzeichnet?
Gruß Hajo

"Wer Rechtschreibfehler findet, darf sie behalten!"
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 06:42:29
Daniel
Na, weil es eben nur deine Interpretation ist. ;-)
Ich habe mich lediglich für Matthias´ Antwort bedankt, in der er schreibt das er das Problem die nächten Tage angeht. Dann weiß ich bescheid....
Grüße,
Daniel
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 15:32:54
Matthias
Hallo Daniel,
Das Makro würde ich doch lieber gerne manuell per Knopfdruck starten und nicht wie im Beispiel automatisch nach dem Öffnen der Datei.
Soll "per Knoopfdruck" die automatische, zeitgesteuerte Aktualisierung laufen oder jede einzelne Aktualisierung?
_____________________________________________________________________________________
Dafür soll beim Öffnen der Datei eine Messagebox kommen.
Ein MsgBox? D.h. eine Abfrage, ob aktualisiert weren soll? Oder ob die zeitgesteuerte Aktualisierung eingeschaltet werden soll?
_____________________________________________________________________________________
Hat das Blatte "Namen" ein spezielle Funktion? Zieht er sich da die Dateinamen?
Falls ja: Wo kann ich das im Code auf ein anderes Blatt abändern?

Ja, die Dateinamen holt es sich hieraus. Es wird dazu die Variable "n" benutzt. Hier mal die relevanten Bestndteile des Makro "Kopieren":

Sub Kopieren()
Dim i As Integer, n As String
i = 1
n = ThisWorkbook.Sheets("Namen").Cells(i, 1) 'n = Blatt Namen, Zelle A1
Do While n <> "" 'Schleifenabbruch, wenn Zelle leer
i = i + 1                                    'Zeile hochzählen
n = ThisWorkbook.Sheets("Namen").Cells(i, 1) 'Variable n neu zuweisen (A2, A3,...)
Loop
End Sub

_____________________________________________________________________________________
Wie mache ich das wenn ich neue Dateien hinzufügen möchte, aus denen Daten geholt werden? Was muss ich im makro ändern?
Du kannst die Dateinamen (ohne ".xls") ins Tabellenblatt "Namen", Spalte A schreiben. Keine Leerzellen lassen, sonst bricht das Makro ab (siehe Codeausschnitt oben).
Gruß Matthias
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 15:59:06
Daniel
"Soll "per Knoopfdruck" die automatische, zeitgesteuerte Aktualisierung laufen oder jede einzelne Aktualisierung?"
Ja, per Knopfdruck soll die automatische, zeitgesteuerte Aktualisierung anlaufen.
"Ein MsgBox? D.h. eine Abfrage, ob aktualisiert weren soll? Oder ob die zeitgesteuerte Aktualisierung eingeschaltet werden soll?"
Nein, nur ein einfacher Hinweis für den Nutzer! Sowas wie "Hallo".
Ok, den Rest habe ich dann verstanden.
Danke für die Erklärungen!
Daniel
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:12:20
Matthias
Hallo Daniel,
eine MsgBox beim Start geht so:
In "DieseArbeitsmappe" (alte Prozedur löschen!):

Private Sub Workbook_Open()
MsgBox "Hallo!"
End Sub

Du kannst auch gleich eine Abfrage einbauen:

Private Sub Workbook_Open()
If MsgBox("Hallo!" & vbLf & "automatische Aktualisierung aktivieren?", vbYesNo, "") = vbYes Then
StartTimer
End If
End Sub

Naja, und mit dem Starten per Knopfdruck geht im Grunde genauso. Oder weißt du nicht, wie man einen Button auf einem Tabellenblatt erstellt und ihm eine Prozedur zuweist?
Gruß Matthias
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:16:38
Daniel
Doch, doch. Das weiß ich.
Aber ich dachte ich muss da beim Makro auch etwas ändern. Schließlich startet es ja im Moment wenn Datei geöffnet wird.
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:23:22
Matthias
Hallo Daniel,
ja, aber das Makro ist ein ganz normales, es wird (wurde) halt über Workbook_Open() aufgerufen.
Du solltest in die Prozedur "StartTimer" noch eine Zeile einbauen, damit bei mehrmaligem Aufruf das ganze nicht doppelt läuft:

'führt Prozedur "Kopieren" aus und bibt Excel Startzeit für die nächste Ausführung an:
Sub StartTimer()
StopTimer '<<<< NEU: evtl. schon vorhandene OnTime-Anweisung löschen
NextTime = Now + TimeValue("00:01:00") 'alle 60 Minuten
Kopieren
Application.OnTime NextTime, "StartTimer"
End Sub

Gruß Matthias
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:40:02
Daniel
Ok, danke. Das klappt nun alles so, wie ich mir das vorgestellt hatte.
Wenn ich nun in das Makro eine anschließende Berechnung einfügen will, dann reicht es doch, wenn ich das Makro mit der Berechnung am Ende des "Kopieren-Makros" per Call ....
aufrufe, oder?
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:44:55
Matthias
Hallo Daniel,
ja, entweder im Kopireen-Makro dranhängen/aufrufen oder in die StartTimer-Prozedur integrieren:

'führt Prozedur "Kopieren" aus und bibt Excel Startzeit für die nächste Ausführung an:
Sub StartTimer()
StopTimer
NextTime = Now + TimeValue("00:01:00") 'alle 60 Minuten
Kopieren
Berechnen '<<<<<<<<<<<<<< oder wie die Sub auch heißt
Application.OnTime NextTime, "StartTimer"
End Sub

Gruß Matthias
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:47:32
Daniel
Wenn ich das nun so einfüge, dann macht es das Update nur einmal nach dem Knopfdruck, stimmt das?
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 16:49:39
Matthias
Hallo Daniel,
nee, "StartTimer" wird alle 60 Minuten ausgeführt. Am Ende steht doch sozusagen: Starte mich nochmal in 60 Minuten (Application.OnTime NextTime, "StartTimer")!
Gruß Matthias
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 17:02:08
Daniel
Das passt dann doch noch nicht...
Wenn ich beim Öffnen der Datei auf "Nein" drücke, und einige Zeit später das Makro manuell per Button ausführe, dann wird es nur einmal ausgeführt.
Wenn ich beim Öffnen der Datei mit "Ja" bestätige, so starter das Makro.
Allerdings scheint es so zu sein, dass ich, wenn ich die UserForm nicht schließe, das Makro kein Update macht. Ist das korrekt?
Das würde ich gerne ändern. Auch ohne Bestätigung sollen Updates gemacht werden.
Beste Grüße,
Daniel
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 17:07:52
Matthias
Hallo Daniel,
Wenn ich beim Öffnen der Datei auf "Nein" drücke, und einige Zeit später das Makro manuell per Button ausführe, dann wird es nur einmal ausgeführt.
Kommt drauf an, welches Makro. "StartTimer" nicht...
-----------------------------------------------------------
Wenn ich beim Öffnen der Datei mit "Ja" bestätige, so starter das Makro.
Allerdings scheint es so zu sein, dass ich, wenn ich die UserForm nicht schließe, das Makro kein Update macht. Ist das korrekt?
Das würde ich gerne ändern. Auch ohne Bestätigung sollen Updates gemacht werden.

ersetze

If UserForm1.Visible = True Then Exit Sub 'keine Aktalisierung, wenn letzte Meldung noch nicht weggedrückt

durch:

If UserForm1.Visible = True Then Unload UserForm1

Gruß Matthias
Anzeige
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 17:15:51
Daniel
Ok, das sollte es dann gewesen sein!
Vielen Dank für die hilfreiche Unterstützung.
Kann ich dir irgendwie meinen Dank zeigen?
Grüße,
Daniel
AW: @Matthias G: Noch ein paar Änderungen und Frag
23.08.2005 17:53:47
Matthias
Hallo Daniel,
Kann ich dir irgendwie meinen Dank zeigen?
Wüsste nicht, wie, außer "Danke" zu sagen....
Das Forum hier ist ja kostenlos.
Gruß Matthias

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige