Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema OptionButton
BildScreenshot zu OptionButton OptionButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Userform soll Zellen mit Inhalt erkennen

Betrifft: Userform soll Zellen mit Inhalt erkennen von: Gerd Fänger
Geschrieben am: 04.08.2008 13:18:55

Hallo und guten Tag!

Ich bitte euch, mir bei folgendem Problem zu helfen:

In einem umfangreichen Excelformular lasse ich die Anwender eine ganze Reihe Daten über eine Userform erfassen. Mit einem Klick auf einen Commandbutton werden die Werte in die entsprechenden Zellen eines (teilweise) geschützten Tabellenblattes geschrieben und die Userform schließt sich.

Wenn jetzt aber an den Daten teilweise Änderungen vorgenommen werden sollen muss die Userform erneut aufgerufen werden. Dabei werden aber die bereits beschriebenen Zellen nicht wieder eingelesen. D.h.: Ändere ich nur einen Wert und lasse die anderen Felder der Userform leer, werden alle nicht geänderten Zellen mit "Leer" überschrieben.

Wie bringe ich die Userform dazu, die Zellinhalte einzulesen und nur dann zu ändern, wenn ich die Inhalte verändert habe oder der Ursprungswert "Leer" war?

Gruß

Gerd

  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Hajo_Zi
Geschrieben am: 04.08.2008 13:25:27

Hallo Gerd,

lese bei Private Sub UserForm_Activate() die Werte aus.

GrußformelHomepage


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Gerd Fänger
Geschrieben am: 04.08.2008 13:43:52

Hallo Hajo!

Hört sich gut an. Kannst Du mir mal eine Bespielzeile senden. Es sind rund 30 Zellen, die über die Userform befüllt werden die in nicht zusammenhängenden Bereichen stehen (Zellen K1, K2, d3, d91ö, i91:i96, k91:k96, g48:g52, g54:g57, e65:e66, f81:f82, g83).

Muss ich für jede Zelle eine If-Anweisung benutzen?

Gerd


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Hajo_Zi
Geschrieben am: 04.08.2008 13:51:10

Hallo Gerd,

das umgekehrte zum schreiben also
Range("a1")=Texbox1
ändern in
Textbox1=Range("A1")

GrußformelHomepage


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Rudi Maintaire
Geschrieben am: 04.08.2008 13:54:13

Hallo,
z.B.

Private Sub UserForm_Activate()
TextBox1 = Range("K1")
TextBox2 = Range("K2")
TextBox3 = Range("D3")
'etc.
End Sub


Muss ich für jede Zelle eine If-Anweisung benutzen?


Nein, wozu? Ist die Zelle leer, bleibt auch die TB leer.

Gruß
Rudi


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Gerd Fänger
Geschrieben am: 04.08.2008 14:03:23

Hallo Rudi, hallo Hajo!

Vielen Dank für die Tipps bisher! Das funktioniert prima.

Nur eine letzte Frage habe ich zu diesem Thema noch:

Kann ich das Einlesen auch mit einem OptionButton vollziehen? Über diese "ja" und "nein" OptionButton werden in der Tabelle jeweils andere Formeln aktiviert.

Gerd


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Rudi Maintaire
Geschrieben am: 04.08.2008 14:28:44

Hallo,
ja, kannst du. Eben auch umgekehrt wie das Schreiben.

Gruß
Rudi


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Gerd Fänger
Geschrieben am: 04.08.2008 14:34:26

Vielen Dank an alle Beteiligten!

Dieses Forum ist echt klasse!

Gerd


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: yusuf
Geschrieben am: 04.08.2008 13:25:29

Hi,

du koenntest ja bevor du etwas in die Zelle schreibst ein if isempty abfrage ausfuehren.

ungetestet z.B.:

if isempty(cells(1, 1)) then
cells(1, 1) = TextBox1
end if

nur mal so als fiktives Beispiel.

Gruß
Yusuf


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: yusuf
Geschrieben am: 04.08.2008 13:31:14

Hi,

die Veraenderung habe ich vergessen, aber dies sollte in der if schleife per OR Anweisung angefuegt werden koennen.

ungetestet:

If IsEmpty(Cells(1, 1)) Or Cells(1, 1) <> TextBox1 Then
Cells(1, 1) = TextBox1
End If


Gruß
Yusuf


  

Betrifft: AW: Userform soll Zellen mit Inhalt erkennen von: Rudi Maintaire
Geschrieben am: 04.08.2008 13:26:42

Hallo,

Wie bringe ich die Userform dazu, die Zellinhalte einzulesen 


indem du alle Zellwerte der zu ändernden Zeile in die entsprechenden Steuerelemente schreibst.

wenn ich die Inhalte verändert habe oder der Ursprungswert "Leer" war?


das ist unnötig, wenn die UF alle Daten enthält. Dann kannst du auch alle zurückschreiben.

Gruß
Rudi


 

Beiträge aus den Excel-Beispielen zum Thema "Userform soll Zellen mit Inhalt erkennen"