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

Problem bei Übergabe von Daten UF1 an UF2

Problem bei Übergabe von Daten UF1 an UF2
25.06.2013 10:28:49
Daten
Hallo zusammen,
irgendwie habe ich vor lauter Code hin und her schieben den Überblick verloren.
Folgende Situation: Aus UF1 (Kundenliste) gebe ich entweder einen Neukunden ein oder wähle bei klick auf den Button "Liste aufrufen" eine Zeile aus der Listbox aus. Jetzt wähle ich das UF2 (Rechnungsformular) aus und übergebe einige Werte aus UF1 an UF2. Erst seit ich die Emailadresse aus Spalte 14 der Kundenliste neu mit eingebunden habe, bekomme ich Fehlermeldung: "Objektvariable oder With-Blockvariable nicht festgelegt.
Wo ist der Fehler?
Musterdatei: https://www.herber.de/bbs/user/86027.xlsm
Vielen Dank schon mal im Voraus
Gruß
Bernd

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem bei Übergabe von Daten UF1 an UF2
25.06.2013 10:45:59
Daten
Hallo Bernd,
Button taucht bei mir nicht auf.
welches Makro / Form wird aufgerufen?
Gruß,
Günther

AW: Problem bei Übergabe von Daten UF1 an UF2
25.06.2013 11:03:25
Daten
Hallo Günther,
Danke das du mir helfen möchtest. Habe gerade die Musterdatei selber noch mal runtergeladen um zu sehen ob etwas fehlt, es fehlt nichts.
 Form wird aufgerufen?
frmKundenliste > klick Button "Liste öffnen" Eintrag aus ListBox anklicken TextBoxen "frmKundenliste" werden gefüllt, dann klick auf Button "Rechnungsformular" = Fehlermeldung!!!
Entweder ist hier der Fehler ...
Private Sub cmdKunde_an_Rechnung_Click()
    Dim Check As Long
    Check = Len(TextBox1.Text) * Len(TextBox2.Text) * Len(TextBox3.Text) * Len(TextBox4.Text) * Len(TextBox5.Text) * Len(TextBox6.Text) * Len(TextBox7.Text) * Len(TextBox8.Text) * Len(TextBox9.Text)
    If Check = 0 Then
    MsgBox "Bitte erst alle 5 Felder ausfüllen"
 Else
    frmKunde_an_Rechnung.Tag = TextBox1.Value & ";" & TextBox2.Value & ";" & TextBox3.Value & ";" & TextBox4.Value & ";" & TextBox7.Value & ";" & TextBox8.Value & ";" & TextBox14.Value
    Application.WindowState = xlMinimized
    Me.Hide
    frmKunde_an_Rechnung.Show vbModeless
 End If
End Sub
... oder vielleicht hier ...
Option Explicit

Private Sub UserForm_Activate()
    Dim vntArray As Variant
    
    If Me.Tag <> "" Then
        vntArray = Split(Me.Tag, ";")
        
        TextBox1.Value = vntArray(0)
        TextBox2.Value = vntArray(1)
        TextBox3.Value = vntArray(2)
        TextBox4.Value = vntArray(3)
        TextBox5.Value = vntArray(4)
        TextBox6.Value = vntArray(5)
        TextBox7.Value = vntArray(6)
        TextBox7.Enabled = False
    End If
End Sub

Private Sub cmdRechnungspositionen_Click()
    Application.WindowState = xlMinimized
    Me.Hide
    frmRechnungspositionen.Show vbModeless
End Sub

Private Sub cmdKunde_an_Rechnung_Click()
    'Datensatz anlegen 
    If Worksheets("Rechnung").Range("A3") > 0 Then
        MsgBox "Kundendaten sind bereits vorhanden"
        Exit Sub
    End If

    Sheets("Rechnung").Activate
    Cells(7, 6).Value = TextBox1.Value
    Cells(3, 1).Value = TextBox2.Value
    Cells(4, 1).Value = TextBox3 & " " & TextBox4
    Cells(5, 1).Value = TextBox5.Value
    Cells(7, 1).Value = TextBox6 & " " & TextBox7
    Cells(6, 6).Value = TextBox8.Value

End Sub

Private Sub cmdKunde_an_RechnungMail_Click()
    'Datensatz anlegen 
    If Worksheets("RechnungMail").Range("A6") > 0 Then
        MsgBox "Kundendaten sind bereits vorhanden"
        Exit Sub
    End If

    Sheets("RechnungMail").Activate
    Cells(12, 6).Value = TextBox1.Value
    Cells(6, 1).Value = TextBox2.Value
    Cells(7, 1).Value = TextBox3 & " " & TextBox4
    Cells(8, 1).Value = TextBox5.Value
    Cells(10, 1).Value = TextBox6 & " " & TextBox7
    Cells(11, 6).Value = TextBox8.Value
    Cells(12, 3).Value = TextBox9.Value

End Sub

Private Sub UserForm_Initialize()
    Dim tblDaten As Worksheet
    Dim tblDaten1 As Worksheet
    
    Set tblDaten = Worksheets("Kundenliste")
    Set tblDaten1 = Worksheets("Hilfstabelle")

    'Titel der UserForm 
    frmKunde_an_Rechnung.Caption = Sheets("Kundenliste").Cells(1, 1).Value
    
    'Beschriftungen für die Bezeichnungsfelder aus Tabelle holen 
    With frmKunde_an_Rechnung
        .Label1.Caption = tblDaten.Cells(2, 1).Value
        .Label2.Caption = tblDaten.Cells(2, 2).Value
        .Label3.Caption = tblDaten.Cells(2, 3).Value
        .Label4.Caption = tblDaten.Cells(2, 4).Value
        .Label5.Caption = tblDaten.Cells(2, 7).Value
        .Label6.Caption = tblDaten.Cells(2, 8).Value
        .Label7.Caption = tblDaten.Cells(2, 9).Value
        .Label9.Caption = tblDaten.Cells(2, 14).Value
    
    End With
    
    frmKunde_an_Rechnung.Caption = Sheets("Hilfstabelle").Cells(6, 1).Value
    
    With frmKunde_an_Rechnung
        .Label8.Caption = tblDaten1.Cells(6, 1).Value
        .TextBox8.Value = tblDaten1.Cells(6, 2).Value
    End With

End Sub

Private Sub cmdAbbruch_Click()
    Unload Me
    Application.WindowState = xlMinimized
    frmKundenliste.Show vbModeless
End Sub

Private Sub UserForm_QueryClose _
    (Cancel As Integer, CloseMode As Integer)
    If CloseMode = vbFormControlMenu Then
        MsgBox "Schließen Sie die Userform über die Schaltfläche Abbrechen!", _
            vbInformation
        Cancel = True
    End If
End Sub
Siehst du meinen Fehler?
Gruß
Bernd

Anzeige
Sheets("Rechnung")...
25.06.2013 11:32:38
Rudi
...gibt es nicht in der Datei.
Gruß
Rudi

AW: Sheets("Rechnung")...
25.06.2013 11:49:52
Bernd
Hallo Rudi,
Danke auch dir für deine Hilfe.
Sheet "Rechnung" ...gibt es nicht in der Datei
Das ist richtig, denn dort funktioniert alles. Erst als ich den Code für Tabelle "RechnungMail" versucht habe anzupassen und aus der UF Kundeliste die Email in TextBox14 mit an frmKunde_an_Rechnung übergeben wollte, bekam ich immer wieder besagte Fehlermeldung.
Wo kann denn mein Fehler liegen?
Gruß
Bernd

AW: Sheets("Rechnung")...
25.06.2013 11:51:58
GuentherH
Hallo Bernd, hallo Rudi
Tja,
da war der Rudi wieder schneller
Beste Grüße,
Günther

Anzeige
AW: Problem bei Übergabe von Daten UF1 an UF2
25.06.2013 13:13:13
Daten
Hallo zusammen,
manchmal sieht man den Wald vor lauter Bäumen nicht. Habe endlich die Zahlendreher gefunden und zwar in "UserForm_Initialize" und "Private Sub cmdKunde_an_Rechnung_Click()".
Jetzt funktioniert es perfekt!
Trotzdem riesengroßen Dank an euch Beide, Rudi und Günther!!!!!!!
Gruß
Bernd

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige