Informationen und Beispiele zum Thema TextBox | |
---|---|
![]() |
TextBox-Seite mit Beispielarbeitsmappe aufrufen |
Betrifft: Makro/VBA: Neu berechnen bis *Teil 2*
von: Ga7er
Geschrieben am: 15.09.2019 07:51:15
Guten Morgen zusammen,
ich hatte in der letzten Woche bereits hierzu eine Anfrage (www.herber.de/forum/cgi-bin/callthread.pl?index=1711651) gestartet, bei der mir Nepumuk eine Beispieldatei erstellt hatte, die genauso funktioniert, wie von mir erhofft. Noch einmal vielen Dank dafür!
Doch als ich den Code in meine Datei kopiert und die Zellbezüge angepasst hatte, funktioniert die Neuberechnung nur ein einziges Mal und nicht fortlaufend. Auch der Zähler springt nur bis 1 und endet dann.
Hier der angepasste Code:
Option Explicit Private llngCounter As Long Private ldtmNextStart As Date Public Sub TimerStart() llngCounter = llngCounter + 1 Cells(19, 19).Value = llngCounter If Cells(1, 12).Value = "Nein" Then ldtmNextStart = Now + TimeSerial(0, 0, 1) Call Application.OnTime(ldtmNextStart, "TimerStart", , True) Else llngCounter = 0 ldtmNextStart = 0 End If End Sub Public Sub TimerStop() If ldtmNextStart <> 0 Then Call Application.OnTime(ldtmNextStart, "TimerStart", , False) llngCounter = 0 ldtmNextStart = 0 End If End SubDas wirklich seltsame: Wenn ich die Beispieldatei von Nepumuk und meine Datei geöffnet habe und der Code aus der Beispieldatei für alle offnen Excel-Dateien ausführen lasse, berechnet sich meine Datei wie die Beispieldatei immer wieder neu.
Betrifft: AW: Makro/VBA: Neu berechnen bis *Teil 2*
von: 1713157.html
Geschrieben am: 15.09.2019 09:40:07
in dem Link sehen wir bestimmt die Datei von Nepumuk. Aber nicht die aktuelle Datei von Dir.
Betrifft: AW: Makro/VBA: Neu berechnen bis *Teil 2*
von: 1713158.html
Geschrieben am: 15.09.2019 09:47:54
Hallo Ga7er,
in Nepumuk's Datei steht in Cells(1, 2)-[B1] steht eine Formel drin,
hast Du die bei Dir Cells(1, 12)-[L1] auch angepaßt?
fragt sich Luschi
aus klein-Pars
PS: Ich verwende im Vba-Code statt Cells(1, 12) lieber Cells(1, "L")
und bei Cells(6, 111) wird es schon abenteuerlich mit der Fingerzählerei: Cells(6, "DG")
Betrifft: oh, danke...
von: 1713159.html
Geschrieben am: 15.09.2019 09:50:28
...wieder was gelernt!
Ich wusste nicht, dass man auch z Bsp Cells(1,"A") verwenden kann.
Ja, das macht das Fingerzählen...ähh...überflüssig ;-)
Betrifft: AW: =SPALTE()
von: 1713160.html
Geschrieben am: 15.09.2019 10:00:11
Hallo,
falls einer weit rechts in der Tabelle arbeitet u. mit Zahlen im Code, aber keine Finger mit den Spalten zählen möchte, hilft die Formel im Betreff. :-)
Man muss dann die Bezugsart nicht umswitchen.
Gruß Gerd
Betrifft: AW: Makro/VBA: Neu berechnen bis *Teil 2*
von: 1713162.html
Geschrieben am: 15.09.2019 10:28:49
Hallo Luschi,
der Hinweis dem Spaltenbuchstaben in Anführungsstrichen ist wirklich toll!
Nun zu deiner Frage: Ja, habe die zwei Zellbezüge meiner Datei angepasst: also S19 und L1 anstatt A2 und B1.
Liegt vielleicht das Problem nicht im Code, sondern an anderer Stelle?
Habe ich vielleicht die beiden Schaltflächen falsch angelegt oder irgendwelche falsche Einstellungen in Excel selbst?
Auch ohne Experte in VBA zu sein, finde ich sehr seltsam, dass es sich nicht einfach übertragen lässt.
Viele Grüße
Ga7er
Betrifft: AW: OT: Spalten nicht absolut adressieren
von: 1713172.html
Geschrieben am: 15.09.2019 12:14:57
Hallo,
OT: Ich rege an, im Code Spalten nie absolut zu adressieren, sondern zu enumerieren.
Siehe als Beispiel http://sulprobil.com/Get_it_done/IT/Excel_Fun/Excel_VBA/sbAccumulatedTradeBlotter/sbaccumulatedtradeblotter.html
Dann passt sich bei Einfügungen oder Löschungen ganzer Spalten der Code automatisch an, wenn man die Enumerierung aktualisiert hat.
Viele Grüße,
Bernd P
Betrifft: AW: Makro/VBA: Neu berechnen bis *Teil 2*
von: 1713163.html
Geschrieben am: 15.09.2019 10:31:36
Hallo Hajo,
da es ein privates Projekt ist, möchte ich es nicht unbedingt im Internet teilen.
Anhand Nepumuks Datei sieht man jedoch, wie es funktionieren soll und auch zumindest in dieser Beispieldatei auch funktioniert.
Nur leider lässt es sich nicht auf meine Datei übertragen, warum auch immer.
Für Ideen wäre ich dir dankbar!