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

fotoalbum

fotoalbum
24.02.2003 07:24:38
ivan

guten morgen alle!
ich habe diesen code gefunden im forum zum bilder-einlesen!
funkt auch gut nur liest der code 8 bilder ein und nicht 160 stück
so wie sie im verzeichniss sind.

frage???
in welcher zeile kann ich im nachfolgenden code einstellen,
das alle bilder eingelesen werden???


Sub bilddateien_lesen()
Dim ordner As String
Dim oBilder As Worksheet
Dim FS As FileSearch
Dim sName As String
'Application.ScreenUpdating = False
'VEREINBARUNGEN:
'Name des Bildauswahlblattes
sName = "Album1"
'Name des Orners
ordner = "E:\Privat\Eigene Bilder\Fotoalbum\Australien"

'ORDNER DURCHSUCHEN
'FileSearch definieren
Set FS = Application.FileSearch
With FS
    .NewSearch
    .LookIn = ordner
    .SearchSubFolders = True
    .FileType = msoFileTypeAllFiles
    .Execute
    
End With

'BLATT ERSTELLEN UND EINRICHTEN
On Error GoTo fehler
Set oBilder = Worksheets.Add
oBilder.Name = sName
'Blattkopf
oBilder.Cells(1, 1).Value = "Bilder aus " & ordner
oBilder.Cells(2, 1).Value = "Vorschau"
oBilder.Cells(2, 2).Value = "Link"
With oBilder.Cells(1, 1).Font
    .Bold = True
    .Size = .Size + 4
End With
With oBilder.Range(Cells(2, 1), Cells(2, 2)).Font
    .Bold = True
    .Size = .Size + 2
End With

'DATEIEN AUS ORDNER EINLESEN
On Error GoTo 0
Dim iZeile As Integer
iZeile = 3
For i = 1 To FS.FoundFiles.Count
'Vereinbarung der Typen, die gesucht werden können
    If FS.FoundFiles(i) Like "*.jpg" Then
        'FS.FoundFiles(i) Like "*.gif" Or _
        'FS.FoundFiles(i) Like "*.tif" Or _
        'FS.FoundFiles(i) Like "*.bmp" Then
        
        'Festsetzung von Bild- und Zeilenhöhe
        oBilder.Rows(iZeile).RowHeight = 150
        'Text vertikal mittig in Zeile
        oBilder.Rows(iZeile).VerticalAlignment = xlVAlignCenter
        'gefundenes Bild einfügen und Höhe auf Zeilenhöhe setzen
        oBilder.Cells(iZeile, 1).Select
        ActiveSheet.Pictures.Insert(FS.FoundFiles(i)).Select
        With Selection.ShapeRange
            .LockAspectRatio = msoTrue
            .Height = 150
            oBilder.Hyperlinks.Add Anchor:=.Item(1), Address:=FS.FoundFiles(i)
        End With
        'maximale Breite merken
        If Selection.ShapeRange.Width > maxWidth Then _
            maxWidth = Selection.ShapeRange.Width
        'Hyperlink mit Dateinamen in Spalte B
        oBilder.Hyperlinks.Add Anchor:=oBilder.Cells(iZeile, 2), _
            Address:=FS.FoundFiles(i), _
            TextToDisplay:=FS.FoundFiles(i), _
            ScreenTip:="Hier klicken, um das Bild anzuzeigen ..."
        'Zeilenzähler hochsetzen
        iZeile = iZeile + 2
    End If
Next
'Breite der 1. Spalte auf max. Breite, der 2. Spalte auf optimale Breite
maxWidth = maxWidth * oBilder.Columns(1).ColumnWidth / _
    oBilder.Columns(1).Width + 5
If maxWidth > 255 Then maxWidth = 255
oBilder.Columns(1).ColumnWidth = maxWidth
oBilder.Columns(2).AutoFit
oBilder.Cells(3, 1).Select
'Application.ScreenUpdating = True
Exit Sub

fehler:

If Err.Number = 1004 Then sName = sName & "_": Resume
End Sub

DANKE
IVAN

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: fotoalbum
24.02.2003 08:10:01
Steffan

Hallo Ivan,

ich hab den Code eigentlich mehrfach getestet und bei mir bringt er deutlich mehr als 8 Bilder. Versuch doch mal nach Definition und Execute des FileSearch-Objektes mit folgenden Befehl die Anzahl der gefundenen Dateien anzeigen zu lassen: Darüber hinaus kannst Du die Fehlerabarbeitung deaktivieren (On Error - Zeile herauskommentieren) um zu sehen ob es einen Fehler (und wenn ja wo) bei der Abarbeitung gibt.
Wenn das alles Dich nicht weiterbringt, dann meld Dich einfach noch mal hier.

Steffan.

Re: fotoalbum
24.02.2003 14:52:44
ivan

hi Steffan.
danke für deine rasche antwort!
ich habe Msgbox FS.FoundFiles.Count eingefügt ,
und es wird mir in der msgbox 160 angezeigt aber
es werden nur 8 bilder eingefügt!!!!
lustige sache was???
die fehlermeldung habe ich auch deaktiviert aber bekomme auch keine fehlermeldung!!!BIN RATLOS HAST NOCH 1 TIPP FÜR MICH??
danke
ivan


Anzeige
Re: ferledigt weil ..........
24.02.2003 15:30:29
ivan

HI
hat sich erledigt!!!
*.jpg habe ich nur 8 stück
*.JPG ist der rest
excel unterscheidet zwischen groß und kleinschreibung!!!!
wahnsinn was es da so gibt zum grübeln und ärgern.
danke
ivan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige