Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
864to868
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
864to868
864to868
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Modul Userform Modul

Modul Userform Modul
29.04.2007 16:26:42
Roger
Hallo Zusammen,
meine Frage bezieht sich noch einmal auf eine UserForm.
Ich starte aus einem Modul eine Userform. Danach gehe ich wieder zurück.
Das mache ich mit unloade me und dann komme ich an die gleiche Stelle.
Was muss ich tun wenn ich an eine andere stelle in dem Modul springen möchte oder sogar in ein anderes Modul.
Hat jemand eine idee?
Gruss Roger

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Modul Userform Modul
29.04.2007 16:31:00
Peter
Hallo Roger,
du kommst nicht an die gleiche Stelle in deinem Makro, sondern ein Statement hinter deinen Unload.Me.
Wenn du in ein anderes Makro willst, solltest du es mit Call Makroname aufrufen.
Gruß Peter

AW: Modul Userform Modul
29.04.2007 16:32:00
Josef
Hallo Roger,
Ideen schon, aber was soll bestimmen, wohin "gesprungen" wird.
Gruß Sepp

Springen aber wie
29.04.2007 16:41:00
Roger
Hallo Sepp,
Ich möchte ein Formular mit hilfe eines Makro gestallten. Rufe ich eine bestimmte Arbeitsmappe auf muss ich zuerst ein paar Fragen beantworten. Die werden mit verschiedenen UserFormen gestellt. Es sind immer Button's die man drückt. je nach Knopf erübrigt sich aber der Ablauf der nächsten Fragen. So wäre es schön wenn ich weiter springen kann. in meinem Hauptmodul frage ich deshalb zuerst eine bstimmte Zelle ab. Wenn sie leer ist fängt die Abfrage an. Wenn Sie voll springe ich direkt an den Endpunkt.
Kann ich also wie Titel machen, die ich dann gezielt aus einer Userform aufrufen kann?
Gruss Roger

Anzeige
Springen aber wie
29.04.2007 16:41:00
Roger
Hallo Sepp,
Ich möchte ein Formular mit hilfe eines Makro gestallten. Rufe ich eine bestimmte Arbeitsmappe auf muss ich zuerst ein paar Fragen beantworten. Die werden mit verschiedenen UserFormen gestellt. Es sind immer Button's die man drückt. je nach Knopf erübrigt sich aber der Ablauf der nächsten Fragen. So wäre es schön wenn ich weiter springen kann. in meinem Hauptmodul frage ich deshalb zuerst eine bstimmte Zelle ab. Wenn sie leer ist fängt die Abfrage an. Wenn Sie voll springe ich direkt an den Endpunkt.
Kann ich also wie Titel machen, die ich dann gezielt aus einer Userform aufrufen kann?
Gruss Roger

Anzeige
AW: Springen aber wie
29.04.2007 17:01:00
Josef
Hallo Roger,
die Rückgabe kannst du doch mit "Select Case" auswerten und je nach Wert, zum gewünschten
Makro verzweigen.
Gruß Sepp

Kompliziertes Spingen...
29.04.2007 17:14:00
Roger
Ich weiss genau was Du meinst, aber ich weiss nicht wie umsetzen.
Ich habe das Makro etwas zurecht kopiert.
In der Userform11 habe ich drei Knöpfe.
Knopf 1: Spaltenbreite
Knopf 2: Zeilenhöhe
Knopf 3: Ausrichten der Überschrift
Wie kann ich nun in der Userform11 sagen das der Knopf 1 zu der Spaltenbreite spingt?

Sub auto_open()
Select Case Sheets(1).Range("A4")
Case ""
''' Abfrage des Analgetyp
Dim Anlagetyp As Integer
With Userform11
.Show
Analgetyp = CDbl(TextBox1)
End With
''' Spaltenbreite
Columns("A:A").ColumnWidth = 18
Columns("B:B").ColumnWidth = 29
Columns("C:C").ColumnWidth = 29
''' Zeilenhöhe
Rows(1).RowHeight = 10
Rows(3).RowHeight = 10
Rows(5).RowHeight = 10
Rows(6).RowHeight = 16
''' Ausrichten der Überschrift
Range("A2:C2", "A4:C4").Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
End With
Case Is  ""
''' Ausrichten der Überschrift
Range("A2:C2", "A4:C4").Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.VerticalAlignment = xlCenter
End With
End Sub


Sorry das ich es nicht besser erklären kann, aber vielleicht verstehst du was ich meine.

Anzeige
AW: Kompliziertes Spingen...
29.04.2007 17:50:12
Josef
Hallo Roger,
sorry, aber ich sehe hier nicht wie du den Rückgabewert "Anlagetyp" weiterberarbeitest.
Gruß Sepp

AW: Kompliziertes Spingen...
29.04.2007 18:06:08
Roger
Das ist mein Fehler.
Ich starte nur die Userform11.
Die Entscheidung treffe ich ja mit dem Knopfdruck.
Ich bin sicher es ist mega einfach aber mir gelingt es nicht.
Ich kann doch sagen was passiert wenn der comanndbutton1 gedrückt wird.
Naja ich nicht aber vielleîcht Du ;O)
''' Abfrage des Analgetyp
With Userform11
.Show
End With

AW: Kompliziertes Spingen...
29.04.2007 18:21:23
Josef
Hallo Roger,
nebenbei, statt "auto_open" solltest du "Workbook_Open" verwenden.
Du musst halt einfach den Rückgabewert auswerten.
Private Sub Workbook_Open()
Dim Anlagetyp As Integer

If Sheets(1).Range("A4") = "" Then
    
    ''' Abfrage des Analgetyp
    With Userform11
        .Show
        Analgetyp = CDbl(.TextBox1)
    End With
    
    Select Case Anlagetyp
        Case 1
            ''' Spaltenbreite
            Columns("A:A").ColumnWidth = 18
            Columns("B:B").ColumnWidth = 29
            Columns("C:C").ColumnWidth = 29
            ''' Zeilenhöhe
            Rows(1).RowHeight = 10
            Rows(3).RowHeight = 10
            Rows(5).RowHeight = 10
            Rows(6).RowHeight = 16
        Case 2
            ''' was bei einem anderen Wert geschehen soll!
        Case Else
    End Select
    
    ''' Ausrichten der Überschrift
    With Range("A2:C2", "A4:C4")
        .HorizontalAlignment = xlCenterAcrossSelection
        .VerticalAlignment = xlCenter
    End With
    
Else
    
    ''' Ausrichten der Überschrift
    With Range("A2:C2", "A4:C4")
        .HorizontalAlignment = xlCenterAcrossSelection
        .VerticalAlignment = xlCenter
    End With
End If
End Sub


Gruß Sepp

Anzeige
Funktioniert noch nicht ganz
29.04.2007 19:13:35
Roger
Hallo Sepp,
ich bringe das Ding einfach nicht zum laufen.
Wie muss die Userform für Dein Beispiel aussehen?
Ich habe ja nur zwei CommandButton.
Kein Textfeld, und das ist auch dass was ich nicht verstehe.
Kannst Du mir noch einmal Helfen?

AW: Funktioniert noch nicht ganz
29.04.2007 19:22:24
Josef
Hallo Roger,
wenn dein UF kein Textfeld besitzt, warum schreibst du dann "Anlagetyp = CDbl(.TextBox1)"?
Setze ein Label auf dein UF, gib ihm den Namen "dummy", stell die Eigenschaft "Visible" auf False und weise deinen beiden CommandButton folgenden Code zu

dummy.Caption = 1 'oder welchen Wert du beim Button 1 willst
Unload Me


beim anderen Button musst du den Wert natürlich ändern.
im Modul schreibst du dann


Anlagetyp = CLng(.dummy)


Gruß Sepp

Anzeige
Label
29.04.2007 19:57:57
Roger
Sepp ich muss nochmals nachfragen wenn ich darf:
Ganz am Anfang hast Du gesagt das ich nicht auto_open sondern workbook_open verwenden soll. Das habe ich auch zuerst, aber als es beim öffnen der Mappe nicht gestartet hat, habe ich es wieder umbenennt. Habe es auch jetzt wieder probiert: woorkbook_open geht nicht, auto_open schon.
Setze ein Label auf dein UF, gib ihm den Namen "dummy", stell die Eigenschaft "Visible" auf False:
ich weiss nicht was Du meinst, verzeih mir die Frage.
Gruss Roger

AW: Label
29.04.2007 20:02:00
Josef
Hallo Roger,
"auto_open" wird nur mehr aus Kompatibilitätsgründen unterstützt, stattessen solltest du im Modul
"DieseArbeitsmappe" die "Private Sub Workbook_Open()" verwenden.
Zum Label: In dein UF einfach ein Label (aus der Toolbox, dort wo du auch die CommandButtons findest) einfügen und ihm den Namen "dummy" zuweisen und "Visible" auf False stellen (In den Eigenschaften des Labels).
Gruß Sepp

Anzeige
Perfekt!
30.04.2007 08:06:00
Roger
Hallo Sepp,
Soweit ich konnte habe ich es nun so ausprobiert, und es funktioniert!
Besten Dank für Deine Hilfe.
Gruss Roger

AW: Option Explicit
29.04.2007 19:04:48
Erich
Hallo Roger,
eine kleine Empfehlung nebenbei:
Es lohnt sich, in jedem Modul ganz oben "Option Explicit" stehen zu haben.
Dann merkt man sehr schnell, wenn aus dem Anlagetyp versehentlich ein Analgetyp wird.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige