VBA Exel - Inhalt von Zellen in Variable schreiben

ja das ist mir alles klar - das hab ich auch selber herausgefunden :)

nur wenn ich das jetzt ausfürhre dann kommt der mir mit der fehlermeldung "objekt erforderlich"

ich hab vrtselecteditem als object gemacht da der gesagt hat das das nicht deklariert ist.

Kannst du mir vllt die ganze funktion zeigen ^^
 
vrtSelectedItem ist ein string, welcher den Pfad beinhaltet, welchen ich hier nur der Funktion zugewiesen habe, weil ich den FileDialog immer als eigene Funktion habe.

Ich weiß auch nicht, wie du das Objekt erforderlich hin bekommst.

P.S.: Da du doch VBA Excel benutzt. Streng mal die suche mit dem begriff File Dialog an.
 
also wenn ich vrtselecteditem als string mache dann kommt die fehler meldung
"Steuervaribable für for each muss vom typ variant oder object sein"

also ich hab das jetzt mal so gemacht:
Code:
Public Function przGetFileName()
    ' Auswahlfenster öffnen und Daten anzeigen
    Dim oFileDialog As FileDialog
    Set oFileDialog = Application.FileDialog(msoFileDialogOpen)
    With oFileDialog
        .Title = "Wählen Sie bitte den gewünschten Ordner aus!"
        .ButtonName = "auswählen"
        .Show
        ' Ausgewählte Datei in Variable übergeben
        For Each vrtselecteditem In .SelectedItems
            GetFileName = vrtselecteditem
        Next
    End With
End Function

und dann hab ich die funktion hier ausgeführt

Code:
Private Sub CommandButton2_Click()
        'Public Function ausführen
        przGetFileName
        'Pfad der Datei von Variablen in Zelle schreiben
        Range("G50").Value = vrtselecteditem
End Sub

nur was ist daran falsch?

ich hab das jetzt mal aus den angaben die du mir gemacht hast heraus geproggt - vllt findest du ja einen fehler ...
 
ahh ok ich glaub ich habs - ich habs als variant gemacht - nur bekomm ich jetzt den inhalt der variablen nicht in die zelle ...

arfg ich dreh noch ab bei dem scheis ^^ ich will das endlich hinbekommen xD
 
also wenn ich vrtselecteditem als string mache dann kommt die fehler meldung
"Steuervaribable für for each muss vom typ variant oder object sein"

also ich hab das jetzt mal so gemacht:
Code:
Public Function przGetFileName()
    ' Auswahlfenster öffnen und Daten anzeigen
    Dim oFileDialog As FileDialog
    Set oFileDialog = Application.FileDialog(msoFileDialogOpen)
    With oFileDialog
        .Title = "Wählen Sie bitte den gewünschten Ordner aus!"
        .ButtonName = "auswählen"
        .Show
        ' Ausgewählte Datei in Variable übergeben
        For Each vrtselecteditem In .SelectedItems
            GetFileName = vrtselecteditem
        Next
    End With
End Function

und dann hab ich die funktion hier ausgeführt

Code:
Private Sub CommandButton2_Click()
        'Public Function ausführen
        przGetFileName
        'Pfad der Datei von Variablen in Zelle schreiben
        Range("G50").Value = vrtselecteditem
End Sub

nur was ist daran falsch?

ich hab das jetzt mal aus den angaben die du mir gemacht hast heraus geproggt - vllt findest du ja einen fehler ...

Wenn du die Funktion umbenennst, dann würde ich das auch im kompletten code machen...
Im moment weist du einer Variablen vom Typ Variant vrtselecteditem zu.

vrtselecteditem brauchst du nicht deklarieren. Das ist ein String innerhalb einer FileDialog Auflistung.

Und Wieso nicht einfach
Code:
Range("G50").Value = przGetFileName

?
 
Zuletzt bearbeitet:
wohhooo ich habs !!^^

jetzt isses nur so das wenn ich die datei einmal ausgewählt habe - das dialogfeld ein 2. mal kommt und ich dann nochmal auswählen muss ....

aber es ist ein fordschritt ... XDD
 
ahhhh ok ich habs ... jetzt gehts wirklich ^^

man war das eine schwere geburt ... aber ich bedanke mich für die hilfe - ohne dich hätte ich es nicht geschaft

Es sollte mehr solche Leute geben wie dich ;-)
 

Neue Beiträge

Zurück