Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Brauche Hilfe bei einer VBA
#1
Hi ihr lieben. 

Ich möchte, dass Excel in der gerade aktiven Zeile die nächste freie Zelle nimmt und da eine Zahl aus meiner Textbox einfügt

Ich brauche nochmal eure Hilfe. Was stimmt an der VBA nicht.

Habe die VBA: Cells(Application.Match(CLng(TextBox1.Value), Columns(1), 0), 1).Select

Suche mir eine von mir vorgegebene Zahl und springe in die Zelle Beispiel 3. 



A       B        C        D

1        8        12
2        7        14
3        6        17
4        9        19

Und jetzt mein Problem Blush Die VBA soll jetzt heißen Spring in die nächste freie Zelle und gibt dort eine Zahl aus meiner Textbox2 ein z.b. 16.

In diesem Beispiel Habe ich die Zahl 4 Gesucht und dann soll er im Feld D4 eine Zahl eingeben. Nach dem er das gemacht hat und ich wieder Zahl 4 suche soll er wieder in die nächste freie Zelle eine Zahl einfügen.

A       B        C        D       E

1        8        12
2        7        14
3        6        17
4        9        19      16


Private Sub CommandButton2_Click()

Dim last As Integer

last = Cells(1, Columns.Count).End(xlToLeft).Column + 1

Cells(1, last).Value = TextBox2

In der VBA schreibt er die neue Zahl immer nur in die Zeile A und nicht in die aktuelle


Vielen dank für eure Hilfe
Antworten Top
#2
(06.07.2024, 20:42)Sofia_Bauer schrieb: last = Cells(1, Columns.Count).End(xlToLeft).Column + 1

Cells(1, last).Value = TextBox2

In der VBA schreibt er die neue Zahl immer nur in die Zeile A und nicht in die aktuelle

...glaub ich nicht... last nimmt die erste freie Spalte in Zeile 1 auf und Du schreibst in diese Spalte der Zeile 1...

Evtl. suchst Du aber nach der letzten Zeile? Dann solltest Du nach Rows suchen und in cells(last, Deine Spaltennummer) schreiben...
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#3
Ich hänge mal meine Excel mit dran. 
Ich möchte, dass wenn ich die Zahl 20 in Spalte A suche, dass er dann in der Zeile wo die Zahl drin steht 
(hier Zeile 16 in das Gelbe Feld den Zahlen wert aus meiner Buchen Box schreibt.
Wenn man nochmal 16 sucht und die nächste Zahl eingibt, soll das ganze in der Zelle daneben also hier blau eingetragen werden.

Vielen dank für eure Ideen


Angehängte Dateien
.xlsm   Makro.xlsm (Größe: 21,89 KB / Downloads: 5)
Antworten Top
#4
Moin,

zuerst die Frage, wieso du in der Bsp-Datei 16384 Spalten im Einsatz hast?
Oder ist das nur zu Testzwecken? Wenn ja, vergiss später nicht, alle nicht mehr notwendigen Spalten wirklich zu löschen; da reicht es nicht aus, einfach nur die Inhalte zu löschen...nur so als Info Wink

So, versuch es mal mit meiner Datei.

Hilfts?

Ciao
Thorsten


Angehängte Dateien
.xlsm   Makro neu.xlsm (Größe: 15,54 KB / Downloads: 5)
Antworten Top
#5
Vielen dank für deine Hilfe :)
Funktioniert super
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste