Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen

Kontrollkästchen in excel übertragen


Betrifft: Kontrollkästchen in excel übertragen von: Kevin
Geschrieben am: 17.10.2017 09:49:19

Guten Morgen zusammen,

ich habe eine Frage, ich habe in einem Formular kontrollkästchen die bei dbexarf angekloickt werden sollen und in excel als "x" markiert werden ein Beispiel:

Es gibt in dem Beispiel 2 Kästchen in dem Formular, in dem Fall sind die Unterlagen eingegangen also wird in dem Kasten ein x gesetzt und übernommen, das andere Feld bleibt leer weil es nicht angeklickt wurde
Unterlagen eingegangen Unterlagen angefordert
X
Kann mir dazu einer einen Code nennen?

  

Betrifft: AW: Kontrollkästchen in excel übertragen von: Peter(silie)
Geschrieben am: 17.10.2017 09:58:13

Hallo,

hier ein Bsp. Code:

value_ = ThisDocument.FormFields("Kontrollkästchen1").CheckBox.Value



  

Betrifft: AW: Kontrollkästchen in excel übertragen von: Kevin
Geschrieben am: 17.10.2017 10:06:16

Hallo Petersilie,

kann ich das einfach unter dem code:
IntErsteLeereZeile = ActiveSheet.cells(Rows.Count, 4).End(xlUp).Row +1

schreiben?

Es werden mit der userform noch andere Sachen in die excel Datei übernommen und die Daten werden immer in die erste leere Zeile geschrieben, so soll das auch mit den kontrollkästchen passieren

Vielen Dank


  

Betrifft: AW: Kontrollkästchen in excel übertragen von: Beverly
Geschrieben am: 17.10.2017 10:00:09

Hi Kevin,

mit "Formular" meinst du UserForm? Z.B. so:

Private Sub CheckBox1_Click()
    If CheckBox1 Then
        Range("A1") = "x"
    Else
        Range("A1").ClearContents
    End If
End Sub

GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Kontrollkästchen in excel übertragen von: Kevin
Geschrieben am: 17.10.2017 10:22:45

Ja genau, allerdings sollen die Daten in die nächste leere Zeile übernommen werden. Also nicht in einer festen Zelle.
Kannst du mir da helfen?
Beispiel

Zeile 21 ist befüllt, jetzt sollen die Daten in Zeile 22 übernommen werden

Vielen Dank


  

Betrifft: Erste leere Zelle von: Beverly
Geschrieben am: 17.10.2017 10:49:24

Die erste freie Zeile lässt sich doch problemlos ermitteln - z.B. so (in Spalte A):

    Dim lngErste As Long
    lngErste = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows. _
Count) + 1
und anstelle Range("A1") verwendest du dann Cells(lngErste, 1)


GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Erste leere Zelle von: Peter(silie)
Geschrieben am: 17.10.2017 11:35:07

Hallo,

VBA muss bei IIF raten, dadurch können unerwartete Fehler auftreten.
IIF ist veraltet und ist nichts anderes als If Then Else, nur eben veraltet und unsicher.
Warum nicht einfach:

lngErste = Cells(Rows.Count, 1).End(xlUp).Row + 1


Dadurch erhählt man auch die nächste freie Zelle in der angegebenen Spalte.


  

Betrifft: AW: Erste leere Zelle von: Kevin
Geschrieben am: 17.10.2017 12:16:51

Ich habe das jetzt so gelöst

If chbxx.value = true then ActiveSheet.cells(intErsteLeereZeile, 37.value = "x"

Funktioniert auch :) also bis jetzt


  

Betrifft: AW: Erste leere Zelle von: Beverly
Geschrieben am: 17.10.2017 12:19:27

Und was machst du, wenn die CheckBox anschließend wieder daktiviert wird, weil sie versehentlich aktiviert wurde und du deine Entscheidung rückgängig machen willst...?


GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Erste leere Zelle von: Kevin
Geschrieben am: 17.10.2017 12:24:32

Wie meinst du das? Das Formular dient nur zur Übertragung von Daten also kann man im nachgang das "x" noch wegmachen oder eben nicht, oder meinst Du, wenn man die checkbox angeklickt hat und dann überlegt, oh ne doch nicht anklicken?


  

Betrifft: AW: Erste leere Zelle von: Beverly
Geschrieben am: 17.10.2017 14:18:36

Wie willst du das "x" nachträglich wegmachen - von Hand? Ist das nicht etwas sinnlos, wenn du alle Daten per UserForm in die Tabelle eintragen möchtest?
"wenn man die checkbox angeklickt hat und dann überlegt, oh ne doch nicht anklicken?" - auch deshalb meine ich, sollte es auf jeden Fall die Möglichkeit geben, den Eintrag wieder rückgängig zu machen. So wie in meinem geposteten Code.


GrußformelBeverly's Excel - Inn


Beiträge aus den Excel-Beispielen zum Thema "Kontrollkästchen in excel übertragen "