Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Klassenmodul - Makro

Klassenmodul - Makro
Padington
Hallo zusammen
Ich 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

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Klassenmodul - Makro
13.09.2010 11:09:37
JogyB
Hallo Padington,
schau mal recht oben über dem Eingabefeld, da steht "Hier gehts zum File-Upload"
Gruß, Jogy
AW: Klassenmodul - Makro
13.09.2010 11:48:42
JogyB
Hallo Padington,
da ich hier nichts herunterladen kann, markiere ich es mal als offen. Wenn es sich bis heute abend keiner ansieht, mach ich mich mal dran.
Gruß, Jogy
AW: Klassenmodul - Makro
13.09.2010 11:55:00
Padington
Danke Jogy!
Was heisst das du kannst es nicht runterladen?
der Link für mein Excel-sheet ist doch da... oder ist da was schief gelaufen.
Jedenfalls vielen Dank für die Bemühungen. ich werde jetzt meine Exceldatei nochmals hochladen (versuchen)!
Danke viel mals!
Liebe Grüsse Padington
https://www.herber.de/bbs/user/71507.xls
Anzeige
AW: Klassenmodul - Makro
13.09.2010 11:56:46
JogyB
Hallo Padington,
hat nichts mit Deiner Datei zu tun, sondern mit dem Proxy hier bei mir, der so gut wie nichts durchlässt.
Gruß, Jogy
AW: Klassenmodul - Makro
13.09.2010 14:52:36
JogyB
Hallo Paddington,
dann bleib bitte beim ursprünglichen Thread in office-loesung.de. Wenn ransi das schon gebastelt hat, dann hat er auch die Änderungen drin bevor ich mich überhaupt in den Code eingelesen habe.
Gruß, Jogy
Anzeige
Crosspost clever-forum, office-loesung.de
13.09.2010 14:59:02
Backowe

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige