Bildgröße in Pixeln auslesen und umrechnen in Excel 2000
Schritt-für-Schritt-Anleitung
-
Makro erstellen: Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Neues Modul einfügen: Klicke auf Einfügen
> Modul
.
-
Makro kopieren: Füge den folgenden Code in das Modul ein:
Option Explicit
Sub Bildeigenschaften()
Dim Drive As String, Pfad As String
Dim objShell As Object, objFolder As Object
Dim varName As Object, Breite As Variant, Höhe As Variant
Dim sPath As Variant, sFile As String
Dim Bild As Variant
Drive = Left(ThisWorkbook.Path, 2)
Pfad = "C:\"
ChDrive (Drive)
ChDir (Pfad)
Bild = Application.GetOpenFilename("Bilddateien (*.JPG), *.xls, Alle Dateien (*.*), *.*", 1, "Bild auswählen...", MultiSelect:=False)
If Bild = "" Or Bild = False Then Exit Sub
If LCase(Right(Bild, 3)) <> "jpg" Then Exit Sub
sFile = Dir(Bild)
sPath = Replace(Bild, sFile, "")
sPath = Left(sPath, Len(sPath) - 1)
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(sPath)
For Each varName In objFolder.Items
If varName = sFile Then
Breite = objFolder.GetDetailsOf(varName, 27)
Höhe = objFolder.GetDetailsOf(varName, 28)
Exit For
End If
Next
Breite = CInt(Mid(Breite, 1, InStr(1, Breite, " ") - 1))
Höhe = CInt(Mid(Höhe, 1, InStr(1, Höhe, " ") - 1))
MsgBox Breite & " , " & Höhe
End Sub
-
Makro ausführen: Schließe den VBA-Editor und führe das Makro über Entwicklertools
> Makros
aus.
Häufige Fehler und Lösungen
- Laufzeitfehler 91: Wenn du diesen Fehler erhältst, kann das daran liegen, dass der Code die Bilddatei nicht finden kann. Überprüfe den Pfad und die Bilddatei.
- Leere Variablen: Wenn die Variablen
Breite
und Höhe
leer bleiben, stelle sicher, dass die Bilddatei tatsächlich Eigenschaften hat. Versuche, die Dateieigenschaften in Windows zu überprüfen.
- Groß- und Kleinschreibung: Achte darauf, dass die Dateiendung korrekt in Kleinbuchstaben geschrieben ist (
jpg
).
Alternative Methoden
Eine alternative Methode zur Bildgrößenauslesung ist die Verwendung der FileDialog
-Methode (ab Excel 2002 verfügbar). Für Excel 2000 kannst du Application.GetOpenFilename
verwenden, um eine Datei auszuwählen.
Dim Bild As Variant
Bild = Application.GetOpenFilename("Bilddateien (*.jpg), *.jpg", 1, "Bild auswählen", , False)
Praktische Beispiele
Um die Bildgrößen in Pixeln in eine Tabelle zu übertragen, kannst du das folgende Makro anpassen. Es listet die Breite und Höhe in den Zellen A1 und B1 auf.
Cells(1, 1).Value = Breite
Cells(1, 2).Value = Höhe
Damit kannst du eine Bildgrößen-Pixel-Tabelle erstellen, die dir hilft, die Dimensionen der Bilder einfach zu vergleichen.
Tipps für Profis
-
Pixel in cm umrechnen: Um die Pixelgröße in Zentimeter umzurechnen, kannst du die Formel verwenden:
[
\text{cm} = \frac{\text{Pixel}}{\text{DPI}} \times 2.54
]
Setze DPI
(dots per inch) je nach Bildauflösung (häufig 72 oder 300 DPI).
-
Verweise überprüfen: Falls du Probleme mit dem Code hast, überprüfe die Verweise in deinem VBA-Projekt. Manchmal kann es hilfreich sein, die Verweise zurückzusetzen.
FAQ: Häufige Fragen
1. Warum funktioniert das Makro nicht auf meinem Computer?
Es könnte an unterschiedlichen Excel-Versionen oder fehlenden Verweisen liegen. Stelle sicher, dass alle benötigten Bibliotheken aktiviert sind.
2. Wie kann ich die Bildgröße in Zentimetern anzeigen?
Verwende die oben genannte Formel zur Umrechnung von Pixel in cm. Du kannst eine zusätzliche Funktion im Makro implementieren, um diese Umrechnung durchzuführen.
3. Gibt es Unterschiede zwischen Excel 2000 und 2003?
Ja, einige Funktionen und Methoden sind in neueren Versionen verfügbar. Achte darauf, welche Funktionen du verwendest, wenn du ältere Versionen nutzt.