VBA Excel Makros
Zahlen zu zelle G4 hinzufügen
Hallo.
Bis jetz verwende ich folgendes Makro
Das Makro schreibt einen 1er in die Aktuelle Zelle...
Wie kann ich des so machen, dass das Makro beim Ausführer einen 1er an die anderen Zahlen in zelle G4 Schreibt?
das heisst, die anderen nicht ersetzen, sondern RECHTS davon eine 1 anhängen??
Bitte helft mir
Grüße
Hallo.
Bis jetz verwende ich folgendes Makro
Sub Blank_1()
'
' Blank_1 Makro
' Schreibt einen 1 in die Blankzeile
'
'
ActiveCell.FormulaR1C1 = "1"
Range("I13").Select
End Sub
Das Makro schreibt einen 1er in die Aktuelle Zelle...
Wie kann ich des so machen, dass das Makro beim Ausführer einen 1er an die anderen Zahlen in zelle G4 Schreibt?
das heisst, die anderen nicht ersetzen, sondern RECHTS davon eine 1 anhängen??
Bitte helft mir
Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 139459
Url: https://administrator.de/forum/vba-excel-makros-139459.html
Ausgedruckt am: 06.04.2025 um 11:04 Uhr
11 Kommentare
Neuester Kommentar
Sers
Das dürfte schon schwieriger werden.
Meines Wissens wird es nicht gehen, da das Makro die Zelle als eine Art InputBox o.ä. sieht. Du könntest dir einen Button einfügen und mit klicke auf diesen das Makro starten.
Soweit ich jedoch weiß dürfte es schwierig werden einer bestimmten Zelle ein Makro zuzuweisen.
Meiner Meinung nach ist es eh besser einen Button bzw. ein variables Element anstatt eines festen Elementes.
Gruß
duffman521
Das dürfte schon schwieriger werden.
Meines Wissens wird es nicht gehen, da das Makro die Zelle als eine Art InputBox o.ä. sieht. Du könntest dir einen Button einfügen und mit klicke auf diesen das Makro starten.
Soweit ich jedoch weiß dürfte es schwierig werden einer bestimmten Zelle ein Makro zuzuweisen.
Meiner Meinung nach ist es eh besser einen Button bzw. ein variables Element anstatt eines festen Elementes.
Gruß
duffman521
naja Duffman,
Ich habs jetzt so probiert, dass ich die Zelle als globales Range-object habe und dort ein GotFocus-Event aufrufe (was aber nicht funktionieren will)
ein anderer Ansatz war, bei Worksheet_SelectionChange auf die Aktive Selection zu prüfen, ob die E9 ist (da hab ich was mit ActiveCell etc. durcheinandergebracht)
So wirklich klappen wollte keins von beiden...
'nen einfachen Button rein, und gut ist
Gruß
Snow
Ich habs jetzt so probiert, dass ich die Zelle als globales Range-object habe und dort ein GotFocus-Event aufrufe (was aber nicht funktionieren will)
ein anderer Ansatz war, bei Worksheet_SelectionChange auf die Aktive Selection zu prüfen, ob die E9 ist (da hab ich was mit ActiveCell etc. durcheinandergebracht)
So wirklich klappen wollte keins von beiden...
'nen einfachen Button rein, und gut ist
Gruß
Snow
@Snowman25
Es ist nicht unmöglich jedoch nicht gerade sehr einfach.
Eine andere Möglichkeit wäre, wenn das Makro dauerhaft läuft und bei der Eingabe eines Wertes dann seinen eigentliche Tätigkeit beginnt. Diese Möglichkeit würde jedoch sehr viel Programmierarbeit voraussetzen.
Vllt. wäre es sogar bei berühren des Feldes schon möglich aber ansonsten denke ich wird es sehr schwer. Schon aus dem Grund, dass Excel das rein klicken anders verarbeitet als das Makro bzw. anders als das nutzen eines Buttons.
Es ist nicht unmöglich jedoch nicht gerade sehr einfach.
Eine andere Möglichkeit wäre, wenn das Makro dauerhaft läuft und bei der Eingabe eines Wertes dann seinen eigentliche Tätigkeit beginnt. Diese Möglichkeit würde jedoch sehr viel Programmierarbeit voraussetzen.
Vllt. wäre es sogar bei berühren des Feldes schon möglich aber ansonsten denke ich wird es sehr schwer. Schon aus dem Grund, dass Excel das rein klicken anders verarbeitet als das Makro bzw. anders als das nutzen eines Buttons.
@Snowman25
Mit "
Nachteil: Es muss zwischenzeitlich eine andere Zelle gewählt werden, um das Ereignis ein weiteres Mal auslösen zu können - insofern würde ich auch einen Button / ein Objekt zum Starten des Makros bevorzugen ...
Grüße
bastla
Mit "
SelectionChange
" sollte es eigentlich so funktionieren:Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address <> "$E$9" Then Exit Sub
Range("G4").Value = Range("G4").Value & "1"
End Sub
Grüße
bastla
Zitat von @bastla:
@Snowman25
Mit "
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address <> "$E$9" Then Exit Sub
Range("G4").Value = Range("G4").Value & "1"
End Sub
Nachteil: Es muss zwischenzeitlich eine andere Zelle gewählt werden, um das Ereignis ein weiteres Mal auslösen zu
können - insofern würde ich auch einen Button / ein Objekt zum Starten des Makros bevorzugen ...
Das war auch eines meiner Probleme. Allerdings hatte ich mich auch schon mit Target.Adress&&ActiveCell&&Selection etc. verheddert. Schon zu lange kein VBA mehr geschrieben.@Snowman25
Mit "
SelectionChange
" sollte es eigentlich so funktionieren:Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address <> "$E$9" Then Exit Sub
Range("G4").Value = Range("G4").Value & "1"
End Sub
Nachteil: Es muss zwischenzeitlich eine andere Zelle gewählt werden, um das Ereignis ein weiteres Mal auslösen zu
können - insofern würde ich auch einen Button / ein Objekt zum Starten des Makros bevorzugen ...
Grüße
bastla
Grüßebastla
Snow