Ankündigung

Einklappen
Keine Ankündigung bisher.

Ausfüllblatt/Formular/Bogen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem: Ausfüllblatt/Formular/Bogen

    Hi zusammen

    Ich sollte in Formular mit folgenden Eigenschaften erstellen. Habt ihr irgendwelche Ideen, wie das in Excel am besten geht?

    Formularform in Excel
    - In Bereiche Eingeteilt
    - Weitere Zeilen werden eingefügt, soferen die „letzte“ Zeile im Bereich angekreuzt wird
    - Kreuzel, Name, Nummer Spalte
    - Übertrag auf neue Tabelle
    - Zeile soll wieder verschwinden, wenn Kreuz weggenommen wird (dynamisch/vor und rück)

    Gibt es so ein Sondertool im Excel um solche Formulare zu erstellen oder muss das alleine mit Makros gelöst werden.

    Wenn dies eurer Meinung nach nur mit einem Makro geschehen soll, wie kann ich dann Zeilen und Kontrollkästchehn durch Makro einfügen/einbleden und ebenfalls wieder ausblednen, sofern das Kreuzchen weggenommen wird?

    ch habe ein sogenanntes Formular erstellt. Dies sieht folgendermassen aus: In Einer Userform sind auf einer Zeile ein Kontrollkästchen und 2 Textkasten. Die ersten drei Zeilen sind gegeben.
    Wenn ich nun das Kontrollkästchen anclicke, erscheint eine neue Zeile welche genau wie die oberen aussehen. Soweit ist dies ja gut.
    Hier das Makro dazu:



    __________________________________________________ ______
    Klassenmodul:

    Option Explicit

    Public WithEvents objCB As MSForms.CheckBox
    Public WithEvents objTB As MSForms.TextBox

    Private Sub objCB_Change()
    Dim CB
    If objCB = True Then
    MsgBox objCB.Name
    Call addcontrols
    __________________________________________________ _______



    __________________________________________________ _______
    Modul 1 zur Userform:

    Option Explicit

    Dim myClass() As cls_EVENT

    Public A As Integer
    Public I As Integer
    Public UF_Height As Long
    Public dieErsten(1 To 3) As MSForms.Control 'CheckBox1, TextBox1, TextBox2


    Public Sub machs()
    Dim CT As MSForms.Control
    Set CT = Nothing
    Erase myClass()
    I = 0
    With UserForm1
    Set dieErsten(1) = .CheckBox1
    Set dieErsten(2) = .TextBox1
    Set dieErsten(3) = .TextBox2
    For Each CT In .Controls
    If TypeOf CT Is MSForms.CheckBox Then
    I = I + 1
    ReDim Preserve myClass(1 To I)
    Set myClass(I) = New cls_EVENT
    Set myClass(I).objCB = CT
    End If
    Next
    End With
    End Sub

    Public Sub addcontrols()
    Dim ctTmp As MSForms.Control
    With UserForm1
    I = I + 1
    Set ctTmp = .Controls.Add("Forms.CheckBox.1", "CB" & I, True)
    With ctTmp
    .Width = dieErsten(1).Width
    .Left = dieErsten(1).Left
    .Height = dieErsten(1).Height
    .Top = (I - 1) * 30 + 18
    ReDim Preserve myClass(1 To I)
    Set myClass(I) = New cls_EVENT
    Set myClass(I).objCB = ctTmp
    End With
    A = A + 1
    Set ctTmp = .Controls.Add("Forms.TextBox.1", "TB" & A, True)
    With ctTmp
    .Width = dieErsten(2).Width
    .Left = dieErsten(2).Left
    .Height = dieErsten(2).Height
    .Top = (I - 1) * 30 + 18
    End With
    A = A + 1
    Set ctTmp = .Controls.Add("Forms.TextBox.1", "TB" & A, True)
    With ctTmp
    .Width = dieErsten(3).Width
    .Left = dieErsten(3).Left
    .Height = dieErsten(3).Height
    .Top = (I - 1) * 30 + 18
    End With
    .Height = Application.Max((I - 1) * 30 + 60, UF_Height)
    End With
    End Sub

    End If
    End Sub

    __________________________________________________ _______


    Ich habe nun das Problem, dass ich, wenn ich im Formular die ersten zwei Häcklein anklicke noch keine neue Zeile eingefügt haben möchte. Erst beim Dritten Feld möchte ich, dass es mir die 4te Zeile infügt.
    Kann mir da jemand helfen.

    Zudem müsste ich dann auch noch die Textfelder (auch die die neu eingefügt werden) mit bestimmten Zeilen in meinem Excelsheet verknüpfen.

    Ich hoffe dies alles ist irgendwie möglich. Ich weiss, das ich mir da eine ziemlich grosse Aufgabe aufgebrummt habe.


    Gerne würde ich mein gesamte Excel-Datei Posten, was sehr viel verständlicher wäre. Wenn also jemand denkt mir helfen zu können, kann ich das Excelsheet gerne auch per e-mail senden.



    Vielen Dank schon im Voraus.

    Liebe Grüsse aus der Schweiz
    Zuletzt geändert von Balu; 13.09.2010, 11:15. Grund: Weitere Erkentnisse
Lädt...
X