Thema Datum  Von Nutzer Rating
Antwort
Rot Aufgabenliste durch Eingabemaske
17.09.2020 16:49:40 DominikH.
NotSolved
17.09.2020 18:23:30 Mase
NotSolved
17.09.2020 20:19:03 ralf_b
NotSolved

Ansicht des Beitrags:
Von:
DominikH.
Datum:
17.09.2020 16:49:40
Views:
1056
Rating: Antwort:
  Ja
Thema:
Aufgabenliste durch Eingabemaske

Hallo Allerseits.

 

Nachdem ich mir jetzt mehrere Tage den Kopf darüber zerbrochen habe bin ich mit meinem Laien-Latein am Ende.

Ich versuche aktuell ein Makro zu schreiben, das eine Art Aufgabenliste erstellt. Mittels Internet-Tutorial konnte ich jetzt eine Eingabemaske erstellen, und diese von Zeile 2 abwärts Einträge generieren lassen.

 

Nun hatte ich vor mir solange ein Eintrag in der Liste markiert ist, eine andere Liste die mittels Textfeld und CommandBox speisbar ist, anzeigen zu lassen.

Sprich Wenn Markierter Text in ListBox1 identisch mit Tabelle1 Zeile1 ist, soll TextBox7 nach Click von CommandBox5 ein neues Item in die ListBox2 setzen und speichern. ListBox2 soll gecleart werden sobald in ListBox1 ein anderer Text markiert ist.

 Außerdem hatte ich vor in die letzte Zeile ein DropDown mit 3 farbigen Stati und den Optionen "Dringend" "In Arbeit" und "Erledigt" erstellen zu lassen, aber ich vermute selbst da wäre ich überfordert.

 

Kann jemand von euch Profis einem Praktikanten mit Druck von oben aushelfen?

 

Der Code für die Maske ist von vba-online.de aus deren Tutorial das ich zum lernen genutzt habe

https://imgur.com/a/HewiaBi

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
Private Sub CommandButton1_Click()
   Dim lZeile As Long
      
     
     lZeile = 2
   
     Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) <> ""
         lZeile = lZeile + 1
     Loop
     
      
     Tabelle1.Cells(lZeile, 1) = CStr("Neuer Eintrag Zeile " & lZeile)
     
    
     ListBox1.AddItem CStr("Neuer Eintrag Zeile " & lZeile)
  
     ListBox1.ListIndex = ListBox1.ListCount - 1
      
     
End Sub
 
 
Private Sub CommandButton2_Click()
   Dim lZeile As Long
   
    
     If ListBox1.ListIndex = -1 Then Exit Sub
   
      
     lZeile = 2
      
     Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) <> ""
     
          
         If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
             
             
             Tabelle1.Rows(CStr(lZeile & ":" & lZeile)).Delete
             
              
             Call UserForm_Initialize
             If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
             
             Exit Do
             
         End If
     
         lZeile = lZeile + 1
     Loop
     
End Sub
 
 
Private Sub CommandButton3_Click()
   Dim lZeile As Long
   
      
     If ListBox1.ListIndex = -1 Then Exit Sub
     
     
     If Trim(CStr(TextBox1.Text)) = "" Then
         
         MsgBox "Sie müssen mindestens einen Namen eingeben!", vbCritical + vbOKOnly, "Fehler"
         
         Exit Sub
     End If
     
     
     
     lZeile = 2
      
     Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) <> ""
     
          
         If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
             
             
             Tabelle1.Cells(lZeile, 1).Value = Trim(CStr(TextBox1.Text))
             Tabelle1.Cells(lZeile, 2).Value = TextBox2.Text
             Tabelle1.Cells(lZeile, 3).Value = TextBox3.Text
             Tabelle1.Cells(lZeile, 4).Value = TextBox4.Text
             Tabelle1.Cells(lZeile, 5).Value = TextBox5.Text
             Tabelle1.Cells(lZeile, 6).Value = TextBox6.Text
             
              
             If ListBox1.Text <> Trim(CStr(TextBox1.Text)) Then
                 Call UserForm_Initialize
                 If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
             End If
             
             Exit Do
             
         End If
     
         lZeile = lZeile + 1
     Loop
     
End Sub
 
 
Private Sub CommandButton4_Click()
     Unload Me
End Sub
 
 
 
Private Sub ListBox1_Click()
   Dim lZeile As Long
      
      
     TextBox1 = ""
     TextBox2 = ""
     TextBox3 = ""
     TextBox4 = ""
     TextBox5 = ""
     TextBox6 = ""
     
      
     If ListBox1.ListIndex >= 0 Then
     
         lZeile = 2
          
         Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) <> ""
         
             
             If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
             
                 
                 TextBox1 = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))
                 TextBox2 = Tabelle1.Cells(lZeile, 2).Value
                 TextBox3 = Tabelle1.Cells(lZeile, 3).Value
                 TextBox4 = Tabelle1.Cells(lZeile, 4).Value
                 TextBox5 = Tabelle1.Cells(lZeile, 5).Value
                 TextBox6 = Tabelle1.Cells(lZeile, 6).Value
             
                 Exit Do
             
             End If
         
             lZeile = lZeile + 1
         
         Loop
         
     End If
     
End Sub
 
Private Sub TextBox7_Change()
     
     
        ListBox2.AddItem TextBox7.Text
         
        If ListBox1.Text <> Trim(CStr(TextBox1.Text)) Then
         
            Call UserForm_Initialize
            If ListBox2.ListCount > 0 Then ListBox2 = 0
             
    End If
     
End Sub
 
Private Sub UserForm_Activate()
 
     If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End Sub
 
 
Private Sub UserForm_Initialize()
   Dim lZeile As Long
   
     
     TextBox1 = ""
     TextBox2 = ""
     TextBox3 = ""
     TextBox4 = ""
     TextBox5 = ""
     TextBox6 = ""
   
     
     ListBox1.Clear
     
     lZeile = 2
     
     Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) <> ""
         
        
         ListBox1.AddItem Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))
         
         lZeile = lZeile + 1
         
     Loop
     
End Sub
 
'Das hier ist der Problemteil
 
Private Sub Teilaufgaben()
 
Dim lZeile As Long
 
        TextBox7 = " "
         
        If ListBox1.ListIndex >= 0 Then
         
            lZeile = 2
             
        Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) <> " "
         
                If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
                 
                TextBox7 = ListBox2
                 
                lZeile = lZeile + 1
                 
                ListBox2.AddItem (CStr("Neue Aufgabe" & lZeile))
                 
        End If
                       
End Sub
 
 
Private Sub TeilAufgabenBox()
 
    If ListBox2.ListIndex = -1 Then Exit Sub
     
        lZeile = 2
         
            Do While Trim(CStr(Tabelle1.Cells(Zeile1, 1).Value)) <> " "
             
                If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
             
                        Tabelle2.Cells(lZeile, 1).Value = Trim(CStr(TextBox1.Text))
                        Tabelle2.Cells(lZeile, 2).Value = TextBox7.Text
                         
                        TextBox7 = ""
                         
                        Tabelle2.Cells(lZeile, 1).Value = TextBox7.Text
                         
                         
                If ListBox1.Text <> Trim(CStr(TextBox1.Text)) Then
                 
                        Call UserForm_Initialize
                                If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0 & ListBox2.ListIndex = 0
                                 
                End If
                 
            End If
             
            Loop
             
End Sub

 

 

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Aufgabenliste durch Eingabemaske
17.09.2020 16:49:40 DominikH.
NotSolved
17.09.2020 18:23:30 Mase
NotSolved
17.09.2020 20:19:03 ralf_b
NotSolved