Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1664to1668
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

Probleme in Private Sub

Probleme in Private Sub
20.12.2018 21:57:46
Harry
Hallo Zusammen - normalerweise veruche ich selber herauszubekommen warum etwas nicht funktioniert. Habe mir in den letzten 2 Wochen ein wenig VBA beigebracht und bin begeistert was man damit so alles machen kann - möglicherweise sind meine ersten Programmierversuche nicht das gelbe vom Ei aber bisher stimmten die Ergebnisse. Also ich habe in einer Tabelle "Ubersicht" 2 Auswahlfelder zur Gestaltung von Formblättern.
Nun möchte ich die in einem definierten Namen (Liste) hinterlegten Fahrstundenzahlen (Üst/ÜL/AB/NF) automatisch in den Formblättern (Schüler) ausfüllen lassen (unterschiedliche Zahlenwerte möglich) außerdem soll das IHK Fahrstunden Feld flexibel bleiben (ohne /4 /14) Über Index(indirekt(Übersicht!E6);1;2) z.B: klappt das in einer eigenständigen Arbeitsmappe gut wenn ich die For - Next - Schleifen in VBA anwende. Setze ich diese nun in die Private Sub (Tabelle 4 ) ein stürzt Excel ab. Wer kann mir helfen?
https://www.herber.de/bbs/user/126246.xlsm

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Probleme in Private Sub
20.12.2018 22:29:45
Rob
Hallo Harry,
ich persönlich würde aus Sicherheitsgründen keine Datei mit Makro aufmachen. Du wirst noch feststellen, was man damit alles so anstellen kann. Besser xlsx-Datei hochladen und den Code hier posten (bitte den dritten Button von rechts für den Quell-Code verwenden: Code pre).
Grüße,
Rob
AW: Probleme in Private Sub
21.12.2018 05:57:30
Harry
Danke Rob für den Hinweis also hier nochmal die Datei als xlsx
https://www.herber.de/bbs/user/126248.xlsx
Als Modul1
Sub Loeschen()
Dim zelle As Range
For Each zelle In Range("A92:E106")
zelle.Borders(xlEdgeLeft).ColorIndex = 2
zelle.Borders(xlEdgeRight).ColorIndex = 2
zelle.Borders(xlEdgeBottom).ColorIndex = 2
zelle.Value = ""
Next
End Sub
Als Private Sub()
Private Sub Worksheet_Calculate()
Dim zelle As Range
Dim zaehler As Integer
Dim Üst As Integer
Dim ÜstStart As Integer
Dim ÜL As Integer
Dim ÜLStart As Integer
Dim AB As Integer
Dim ABStart As Integer
Dim NF As Integer
Dim NFStart As Integer
Dim plusSpalte As Integer
Dim pluszeile As Integer
Üst = Range("B4").Value
ÜL = Range("B5").Value
AB = Range("D4").Value
NF = Range("D5").Value
ÜstStart = 7
ÜLStart = ÜstStart + Üst
ABStart = ÜLStart + ÜL
NFStart = ABStart + AB
plusSpalte = 0
pluszeile = 0
Select Case True 'BGQ4
Case Range("A2").Value = "Ausbildungsklasse D / BGQ 4"
GoTo Line1
Case Range("A2").Value = "Ausbildungsklasse D / DE / BGQ 4"
GoTo Line1 'Ende BGQ4
Case Range("A2").Value = "Ausbildungsklasse D / DE / BGQ 14" 'BGQ14
GoTo Line2
Case Range("A2").Value = "Ausbildungsklasse D / BGQ 14"
GoTo Line2
Case Else
GoTo Line3 'BGQohne
End Select
GoTo Line4
Line1: 'BGQ4
For Each zelle In Range("A93:E107")
zelle.Borders(xlEdgeLeft).ColorIndex = 2
zelle.Borders(xlEdgeRight).ColorIndex = 2
zelle.Borders(xlEdgeBottom).ColorIndex = 2
zelle.Value = ""
Next
For Each zelle In Range("A93:E97")
zelle.Borders(xlEdgeLeft).ColorIndex = 1
zelle.Borders(xlEdgeRight).ColorIndex = 1
zelle.Borders(xlEdgeTop).ColorIndex = 1
zelle.Borders(xlEdgeBottom).ColorIndex = 1
Next
Range("A92").Value = "IHK"
Range("B92").Value = "Stunden zu je 45 Minuten"
Range("B93").Value = "geplant"
Range("D93").Value = "Datum"
Range("E93").Value = "Fahrlehrer"
For zaehler = 0 To 3
Cells((94 + zaehler), 1).Value = 1 + zaehler
Next
GoTo Line4
Line2: 'BGQ14
For Each zelle In Range("A93:E107")
zelle.Borders(xlEdgeLeft).ColorIndex = 2
zelle.Borders(xlEdgeRight).ColorIndex = 2
zelle.Borders(xlEdgeBottom).ColorIndex = 2
zelle.Value = ""
Next
For Each zelle In Range("A93:E107")
zelle.Borders(xlEdgeLeft).ColorIndex = 1
zelle.Borders(xlEdgeRight).ColorIndex = 1
zelle.Borders(xlEdgeTop).ColorIndex = 1
zelle.Borders(xlEdgeBottom).ColorIndex = 1
Next
Range("A92").Value = "IHK"
Range("B92").Value = "Stunden zu je 45 Minuten"
Range("B93").Value = "geplant"
Range("D93").Value = "Datum"
Range("E93").Value = "Fahrlehrer"
For zaehler = 0 To 13
Cells((94 + zaehler), 1).Value = 1 + zaehler
Next
GoTo Line4
Line3: 'Ohne BGQ Case Else
For Each zelle In Range("A92:E107")
zelle.Borders(xlEdgeLeft).ColorIndex = 2
zelle.Borders(xlEdgeRight).ColorIndex = 2
zelle.Borders(xlEdgeBottom).ColorIndex = 2
zelle.Value = ""
Next
Line4:
For zaehler = ÜstStart To ÜstStart + Üst + ÜL + AB + NF - 1 'leer
Worksheets("Schüler 1").Cells((zaehler + pluszeile), (3 + plusSpalte)).Value = ""
If zaehler > 51 Then
pluszeile = -46
plusSpalte = 7
End If
Next
For zaehler = ÜstStart To ÜstStart + Üst - 1 'Üst
Worksheets("Schüler 1").Cells((zaehler + pluszeile), (3 + plusSpalte)).Value = "Üst"
If zaehler > 51 Then
pluszeile = -46
plusSpalte = 7
End If
Next
For zaehler = ÜLStart To ÜLStart + ÜL - 1 'ÜL
Worksheets("Schüler 1").Cells((zaehler + pluszeile), (3 + plusSpalte)).Value = "ÜL"
If zaehler > 51 Then
pluszeile = -46
plusSpalte = 7
End If
Next
For zaehler = ABStart To ABStart + AB - 1 'AB
Worksheets("Schüler 1").Cells((zaehler + pluszeile), (3 + plusSpalte)).Value = "AB"
If zaehler > 51 Then
pluszeile = -46
plusSpalte = 7
End If
Next
For zaehler = NFStart To NFStart + NF - 1 'NF
Worksheets("Schüler 1").Cells((zaehler + pluszeile), (3 + plusSpalte)).Value = "NF"
If zaehler > 51 Then
pluszeile = -46
plusSpalte = 7
End If
Next
End Sub

Anzeige
AW: Probleme in Private Sub
21.12.2018 15:33:32
Hajo_Zi
das geht nicht, da eine XLSX Datei kein Makro enthalten kann.
Ich sehe keinen Grund eine Datei 2x zu speichern. Ich führe keine Liste unter welchem Dateinamen ich die Datei gespeichert habe.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
Wohl gar nichts gelesen, Hajo, ...
21.12.2018 19:09:38
Luc:-?
…folglich unberechtigt-dämliche AW! :->
Luc :-?
AW: Probleme in Private Sub
21.12.2018 22:30:47
Rob
Hast Du schon mit F8 im Debugging-Modus den Fehlercode bzw. die fehlerhafte Zeile ermitteln können?
AW: Probleme in Private Sub
21.12.2018 16:35:56
Harry
Hallo Hajo - danke für die Antwort - passt aber nicht zu meiner Frage
Die erste Datei die ich hochgeladen habe ist eine xlsm also mit Makro.
Rob hatte aber gebeten die Datei ohne Makro (xlsx) hochzuladen und den Code seperat.
Anzeige
AW: Probleme in Private Sub
21.12.2018 19:06:29
Harry
Habe wohl das Kontrollkästchen offen Fragen nicht angeklickt
Immer noch nicht, Harry! ;-] Noch offen! owT
21.12.2018 20:00:09
Luc:-?
:-?
AW: Immer noch nicht, Harry! ;-] Noch offen! owT
21.12.2018 20:35:18
Harry
Danke Luc - aber zur eigentlichen Frage habe ich noch keinen Vorschlag bekommen
Ich weiß, deshalb hatte ich das auch offen ...
22.12.2018 00:16:22
Luc:-?
…gesetzt (das dicke !), Harry,
was du mit deinem BT ohne aktiviertes Kontrollkästchen nun wieder entfernt hast, weshalb der Thread im Zusammenhang mit deiner neuen AW den Meisten nun als erledigt gelten könnte und diejenigen, die gezielt auf NOCH OFFEN klicken, ihn gar nicht erst sehen. (Steht alles schon neben dem Kontrollkästchen → mal lesen!)
Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige