Probleme VBA-mit Zell Anweisung ob lehr
#1
halle liebe gemeinde 23

leider habe ich mit der nachfolgenden Anweisung meine Schwierigkeiten dies umzustellen und habe schon einiges probiert mit dem was ich so im netz gefunden habe .

 lfreerow = .Cells(.Rows.Count, A:B").End(xlUp).Row + 1

Ich habe in Tabelle1 Zwei TextBoxen (Texbox5,Texbox6) die werte in Tabelle3 eintragen 

Tabelle1 Texbox5=Tabelle3 Spalte A
Tabelle 1 Texbox6=tabelle3 SpalteB

wenn ich jetzt ein wert eintrage beispielsweise in A2 ,wird der wert eingetragen. Das Problem ist das wen ich in der nässten spalte was eintragen will in Spalte B dann wird in in Zeile 2 alles gelöscht und stattdessen der wert von Textbox6 eingetragen dabei sol. dies in der nässten freien Zeile eigetragen werden


Angehängte Dateien
.xlsm   Mappe1 (1).xlsm (Größe: 136,8 KB / Downloads: 7)
Antworten Top
#2
Wir kennen den Code mittlerweile.
Was sind "Klerfälle"? 

Mir scheint du hast die falsche Datei angefügt. Denn die hier hat nen Fehler 

lfreerow = .Cells(.Rows.Count, A:B").End(xlUp).Row + 1

Entweder du schreibst da "A" oder "B"  oder 1 oder 2 aber beides haut nicht hin. Und die Anführungsstriche sollten schon den Text einschließen.  
Und noch was. Der Button ist immer noch nicht mit dem Makro verknüpft.
Antworten Top
#3
Das ist Interne wahre die aus verschiedenen gründen aus dem Logistik Prozess rausgenommen wurden-mehr kann ich leider nicht dazu sagen 

Das mit A und B hab ich als Platzhalter eingefügt in der VBA Anweisung, den um die Spalten geht es und ja ich weis das es so nicht funktioniert daher auch meine frage wal ich im Internet nichts passendes gefunden habe für meine Lösung 

wen ich mitTexbox5 in spalte A ein wert eintrage funktioniert das leider nicht mit texbox6 wen ich in der nachfolgenden Zelle in Spalte B ein wert eintragen will. Daher suche ich im Internet schon nach einer Lösung und bin aktuell noch dabei
Antworten Top
#4
bisher ging ich davon aus das du beide Werte zur gleichen Zeit in die gleiche Zeile schreiben willst. Somit sind die Spalten jeweils gleich voll und die letzte belegte Zeile+1 ist für beide Eintragungen die Selbe.  

Sollte es nicht so sein, dann ermittelst du eben die letzte benutzte Zeile nochmal. Jeweils vor dem Einfügen
Antworten Top
#5
Sagen wir mal ich habe eine Hose als beichbiel, dann gebe ich es über Texbo5 ein
und wen ich davon 5 stücke habe trage ich über texbox6 die menge ein. Meine Zellformen lassen  aber auch zu das beide spalten unabhängig funktionieren in dem ich nur in einer spalte ein wert eingebe

=WENN(A2>0;1;"")
=WENN(B2>0;B2;C2)

Ich glaube du meinst das so ungefähr ?
LetzteZeile = .Cells(.Rows.Count, 2).End(xlUp).Row + 1



Public Sub letzte_zeile_1()
    letztezeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
    MsgBox letztezeile
    End Sub
Antworten Top
#6
Moin k-siebke,

VBA ist eine Programmiersprache, die durchaus sensibel auf Fehler reagiert. Entweder mit (manchmal leider wenig hilfreichen) Fehlermeldungen, oder einer gelben Markierung im abgebrochenen Code. Oft sind es tatsächlich kleinste Kleinigkeiten, die eine Funktion oder Sub sterben lassen. Ein fehlender Punkt, geöffnete, aber nicht wieder geschlossene Klammern oder Anführungstriche sind da häufig die Ursache.

Deutsch ist eine Sprache, die der menschlichen Verständigung dient. Dabei hat der Empfänger einer Aussage/Frage, usw. die Möglichkeit, bei Unklarheiten nachzufragen oder mit einer Vermutung zur Bedeutung der Nachricht zu reagieren. Mal ganz ehrlich: Ich verstehe Deine Sätze selbst nach mehrfachem Lesen kaum. Willst Du nicht mal einen Deutsch-Kurs besuchen und dann mit VBA weitermachen?

Sorry - aber verständliches Deutsch (oder gerne auch eine andere Sprache) wäre schon nett.

Grüße

d`r Bastler von den VBAsteleien.de
Win 10 & 11, Office 2019 & 2021 & macOS X.15, XL 2019
Antworten Top
#7
(12.06.2022, 16:59)d'r Bastler schrieb: Moin k-siebke,

VBA ist eine Programmiersprache, die durchaus sensibel auf Fehler reagiert. Entweder mit (manchmal leider wenig hilfreichen) Fehlermeldungen, oder einer gelben Markierung im abgebrochenen Code. Oft sind es tatsächlich kleinste Kleinigkeiten, die eine Funktion oder Sub sterben lassen. Ein fehlender Punkt, geöffnete, aber nicht wieder geschlossene Klammern oder Anführungstriche sind da häufig die Ursache.

Deutsch ist eine Sprache, die der menschlichen Verständigung dient. Dabei hat der Empfänger einer Aussage/Frage, usw. die Möglichkeit, bei Unklarheiten nachzufragen oder mit einer Vermutung zur Bedeutung der Nachricht zu reagieren. Mal ganz ehrlich: Ich verstehe Deine Sätze selbst nach mehrfachem Lesen kaum. Willst Du nicht mal einen Deutsch-Kurs besuchen und dann mit VBA weitermachen?

Sorry - aber verständliches Deutsch (oder gerne auch eine andere Sprache) wäre schon nett.

Grüße
ich habe so gute es geht erklärt. Darf ich fragen was nicht verständlich ist ?
Antworten Top
#8
Hallo,

so würde deine Anfrage aus dem 1. Beitrag funktionieren:

Code:
Sub test()
    Dim lfreerow As Long
    With Tabelle1
        lfreerow = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
    End With
    MsgBox lfreerow
End Sub
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#9
(12.06.2022, 18:29)Klaus-Dieter schrieb: Hallo,

so würde deine Anfrage aus dem 1. Beitrag funktionieren:

Code:
Sub test()
    Dim lfreerow As Long
    With Tabelle1
        lfreerow = .Cells(.Rows.Count, "A").End(xlUp).Row + 1
    End With
    MsgBox lfreerow
End Sub
Danke für deine Hilfe leider haut er bei mir  eine gelbe Fehlermeldung gerade rein  rein.
Antworten Top
#10
Hallo,


Zitat: leider haut er bei mir  eine gelbe Fehlermeldung gerade rein  rein.


welche Fehlermeldung "haut er" denn wo rein?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top


Gehe zu:


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