Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Userform Listbox Problem
#1
Guten Morgen @all,

habe ein kleines Problem mit meinem "Fakturierungsprogramm":

In der Tabelle Jahresübersicht existiert der Button Mahnung senden, welcher die Userform2 ausführt mit den offenen Rechnungen. Beim anklicken in der Listbox sollten dabei jeweils alle Daten in der Userform ausgefüllt werden, was auch solange funktioniert, wenn die Rechnungsnummer in B2:B6 eine normale Zahl ist. (siehe Rechnung 1 bis 3). Rechnung 4 und 5 ist aber folgendermaßen formatiert 5 / 2017 und 4 / 2017, diese werden mir zwar in der Listbox der Userform2 angezeigt, aber beim anklicken in der Listbox wird mir der Pfad zum pdf nicht angezeigt. Huh

In der Anlage ist das Dokument, im Tabellenblatt Eingabe ist der Adminbutton mit Password: 123

Zur Ermittlung des Pfads und Clickevent der Listbox verwende ich folgenden Code:

Code:
Private Sub ListBox1_Click()
  Dim pfadPDF As String
  Dim lZeile As Long
  
    'Wenn der Benutzer einen Namen anklickt, suchen wir
    'diesen in der Tabelle3 heraus und tragen die Daten
    'in die TextBoxen ein.
    
    'Wir löschen standardmäßig alle bisherigen TextBoxen-Inhalte
    TextBox1 = ""
    TextBox2 = ""
    TextBox3 = ""
    TextBox4 = ""
    TextBox5 = ""
    TextBox6 = ""
    TextBox7 = ""
    TextBox8 = ""
    
    'Nur wenn ein Eintrag selektiert/markiert ist
    'If ListBox1.ListIndex >= 0 Then
    
        lZeile = 2 'Start in Zeile 2, Zeile 1 sind ja die Überschriftrn
        'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
        Do While Trim(CStr(Tabelle6.Cells(lZeile, 2).Value)) <> ""
        
            'Wenn wir den Namen aus der ListBox1 in der Tabelle3 Spalte 1
            'gefunden haben, übertragen wir die anderen Spalteninhalte
            'in die TextBoxen!
            If ListBox1.Text = Trim(CStr(Tabelle6.Cells(lZeile, 2).Value)) Then
            
                'TextBoxen füllen
                TextBox1 = Trim(CStr(Tabelle6.Cells(lZeile, 1).Value))
                TextBox2 = "Nr_" & Tabelle6.Cells(lZeile, 2).Value
                TextBox3 = Tabelle6.Cells(lZeile, 3).Value
                TextBox4 = Tabelle6.Cells(lZeile, 4).Value
                TextBox5 = Tabelle6.Cells(lZeile, 5).Value
                TextBox6 = Tabelle6.Cells(lZeile, 6).Value
                TextBox7 = Format(Tabelle6.Cells(lZeile, 7).Value, "Currency")
                TextBox7.BackColor = Tabelle6.Cells(lZeile, 12).DisplayFormat.Interior.Color
                TextBox8 = Tabelle6.Cells(lZeile, 9).Value
                            
                Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
            
            End If
        
            lZeile = lZeile + 1 'Nächste Zeile bearbeiten
        
        Loop
        
        pfadPDF = Worksheets("Konfiguration").Range("C3").Value
        Dim MyObj As Object, MySource As Object, file As Variant
        file = Dir(pfadPDF)
        While (file <> "")
        If InStr(file, UserForm2.TextBox2) Then
        UserForm2.TextBox9.Value = pfadPDF & file
        Exit Sub
        End If
        file = Dir
        Wend
    

Wie gesagt, verstehe nicht, wieso der Clickevent für den Pfad zur Pdf nur funktioniert, wenn in der Spalte B die Zahl eine ganze Zahl ist.

Danke im voraus


Angehängte Dateien
.xlsm   Verrechnung.xlsm (Größe: 962,26 KB / Downloads: 9)
Antworten Top
#2
Hi,

Kann auch nicht funktionieren...
Bei mir wird mal gar kein Pfad angezeigt, was auch logisch ist da keine PDF bei mir vorhanden ist!
Aber in deiner versteckten Textbox2 wird der Inhalt der jeweiligen Zelle eingetragen (RechNr) "Nr_" & Tabelle6.Cells(lZeile, 2).Value
Welcher dann gesucht wird ob dieser Pfad vorhanden ist.
Da in diesem String ein  (/) vorhanden ist kann dies in einem Dateinamen auch nicht vorkommen, somit kann auch keine Datei angezeigt.
lg Chris
Feedback nicht vergessen.
[Bild: v.gif]
3a2920576572206973742064656e20646120736f206e65756769657269672e
Antworten Top
#3
Hallo,

nochmal ganz deutlich ...

Zitat:folgendermaßen formatiert ... 5 / 2017 und 4 / 2017

der Einsatz von Zeichen, die von Microsoft selbst zur Steuerung ihrer Windows- und Officeanwendungen genutzt werden, sind selbstverständlich für Dich tabu.
Ändere die Formatierung, dann läuft's hochwahrscheinlich auch durch.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#4
Hallo,

... ergänzend zu meinen vorhergehenden Ausführungen schau mal hier


Angehängte Dateien Thumbnail(s)
   
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#5
Code:
Private Sub ListBox1_Click()
  sn = Tabelle6.Cells(1).CurrentRegion
        
  For j = 2 To UBound(sn)
    If ListBox1.Text = Trim(snj, 2) Then Exit For
  Next
            
  For jj = 1 To 8
    Me("TextBox" & jj) = sn(j, jj - jj > 7)
  Next
                
  c00 = Sheets("Konfiguration").Range("C3").Value
  c01 = Dir(c00)
  Do Until c01 = ""
    If InStr(c01, TextBox2) Then Exit Do
    c01 = Dir
  Loop
  TextBox9 = c00 & c01
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste