Keine ner Idee? (
Schaut fast so ausâŠ
Schade.
GruĂ Rolf
Keine ner Idee? (
Schaut fast so ausâŠ
Schade.
GruĂ Rolf
Schaut fast so ausâŠ
Schade.
Hallo Rolf,
ich habe den Ăberblick verloren (Naja, hab manchmal auch Lesehemmungen bei langen Beitragsfolgen ) ), was genau geht denn jetzt nicht?
Welche Grafikformate genau.
Als eine Idee diese, wenn VbA ein Grafikformat nicht anzeigen kann , z.B. .tif, dann am besten ein batchprogrammierungsgeeignetes Kommandozeilenprogramm suchen und finden was man dann so aufruft:
Mache=shell(tif2jpg.exe C:\Meinbild.tif c:\Meinbild.jpg)
GruĂ
Reinhard
Moin,
hmmmm, eigentlich wollte ich s nicht so âumstĂ€ndlichâ haben.
Man kann ja auch n Exce oder doc âeinfachâ öffnen.
Deshalb dachte ich mir, kanns ja mitn Bild oder dergleichen ned schwieriger sein.
GruĂ Rolf
[Bei dieser Antwort wurde das Vollzitat nachtrÀglich automatisiert entfernt]
Hallo Rolf,
sorry das es ein wenig gedauert hat. Aber auf die Lösung haettest du auch selber kommen koennen. Einfach mein Bsp. nehmen und ein paar kleine Ănderungen rein und schwups dann sollte es klappen
hier mal meine Suche -->
Ok, dann schmeissen wir die raus aus dem Demo
Das Ergebnis wird mir - wie gesagt in der Listbox angezeigt
und ich kann dann die Ordner öffnen -->
Die Ordner konnte man in dem Demo auch schon vorher öffnen
Probiere das mal so
Option Explicit
Private Sub LoadImg()
Dim Path As String
Dim Pic As String
If ListBox1.ListIndex = -1 Then
MsgBox "Keine Eintraege vorhanden!", vbCritical
Exit Sub
End If
Path = Left(ListBox1.List(ListBox1.ListIndex), InStrRev(ListBox1.List(ListBox1.ListIndex), "\"))
If Not (FileExists(Listbox1.List(Listbox1.ListIndex))) Then
MsgBox "BildDatei wurde nicht gefunden!"
Exit Sub
Else
'Hier die Extension prĂŒfen und ggfls. Meldung anzeigen
Label1.Caption = Path
Image1.Picture = LoadPicture(Listbox1.List(Listbox1.ListIndex))
Shell "explorer.exe /e," & Path, vbNormalFocus
End If
End Sub
Private Function FileExists(sFile As String)
On Error Resume Next
Dim x As Integer
x = GetAttr(sFile)
FileExists = Err.Number = 0
End Function
Private Sub ListBox1\_Click()
Call LoadImg
End Sub
Wie du siehst sind nur minimale Ănderungen von nöten gewesen
MfG Alex
PS: Ist ungetestet da ich kein Office Kram installiert habe und auch nur .NET drauf hab sollte aber klappen
Ok, Hallo,
ja, das schaut so sehr fein aus.
Er öffnet zwar noch nichts, aber zumindest keine Meldung bezĂŒglcih - Objekt fehlt und so.
Ich check das mal noch n bischen durch.
Ich danke dir schon mal
GruĂ Rolf
Option Explicit
Private Sub LoadImg()
Dim Path As String
Dim Pic As String
If ListBox1.ListIndex = -1 Then
MsgBox âKeine Eintraege vorhanden!â, vbCritical
Exit Sub
End If
Path = Left(ListBox1.List(ListBox1.ListIndex),
InStrRev(ListBox1.List(ListBox1.ListIndex), ââ))
If Not (FileExists(Listbox1.List(Listbox1.ListIndex))) Then
MsgBox âBildDatei wurde nicht gefunden!â
Exit Sub
Else
'Hier die Extension prĂŒfen und ggfls. Meldung anzeigen
Label1.Caption = Path
Image1.Picture =
LoadPicture(Listbox1.List(Listbox1.ListIndex))
Shell âexplorer.exe /e,â & Path, vbNormalFocus
End If
End SubPrivate Function FileExists(sFile As String)
On Error Resume Next
Dim x As Integer
x = GetAttr(sFile)
FileExists = Err.Number = 0
End FunctionPrivate Sub ListBox1_Click()
Call LoadImg
End SubWie du siehst sind nur minimale Ănderungen von nöten gewesen
)
MfG Alex
PS: Ist ungetestet da ich kein Office Kram installiert habe
und auch nur .NET drauf habsollte aber klappen
Ok, Hallo,
ja, das schaut so sehr fein aus.
Er öffnet zwar noch nichts, aber zumindest keine Meldung
bezĂŒglcih - Objekt fehlt und so.
Was öffnet er denn nicht? Gehe ansonsten mal das Makro im Debug Modus durch und prĂŒfe mal die Variablen und deren Werte.
Ich check das mal noch n bischen durch.
Ich danke dir schon mal
Nichts zu danken
MfG Alex
Servus,
er lÀuft durch, der Pfad zum Bild samt Bild-Name + extension passt.
Aber im Image1 wird mir nichts angezeigt. ((
GruĂ Rolf
[Bei dieser Antwort wurde das Vollzitat nachtrÀglich automatisiert entfernt]
Hallo Rolf
er lÀuft durch, der Pfad zum Bild samt Bild-Name + extension
passt.
Aber im Image1 wird mir nichts angezeigt.((
Die Function Fileexists lÀuft durch und liefert dir ein True zurueck?
Tausche mal zu Testzwecken das Bild gegen ein anderes aus.
Das muss eigentlich funktionieren.
Hab das heute mal meiner Madame geschickt und da klappte es wunderbar.
Wie hast du denn das image1 eingestellt?
MfG Alex
Moin Anno,
das Image1 hab ich in der Userform erstellt.
Was er zurĂŒckliefert weĂss ich nicht, er zeigt mir nichts anâŠ
Das mit dem Test könnt ich mal checken.
GruĂ Rolf
[Bei dieser Antwort wurde das Vollzitat nachtrÀglich automatisiert entfernt]
Ups - ett löfft!
Hallo,
doch es war das falsche Bild. Hab mal n jpg genommen und das funtzt-noch kein tiff - aba das bekomm ich irgendwie hin
Super Danke dir!
GruĂ Rolf!
[Bei dieser Antwort wurde das Vollzitat nachtrÀglich automatisiert entfernt]
Hallo Rolf,
also wenn du das himbekommst ziehe ich meinen Hut vor dir!
Soweit ich weiss, gibt es keine Möglichkeit ein Bild im Format Taget Image (*.tif) in VB darzustellen.
Aber soll dein Tool nur bei dir laufen oder auch auf anderen Rechnern?
Sollte es nur bei dir laufen. Dann fallen mir spontan 2 Möglichkeiten ein.
Wenn du Infran View installiert hast dann kannst du es darueber via VB umcodieren nach jpg und das dann anzeigen.
'Convert via IrfanView
Sub Convert()
Dim myCom As String
Dim srcFile As String, dstFile As String
srcFile = Dein Tif Bild
dstFile = Dein AusgangsBild
'IV ist der Pfad zu IrfanView
myCom = IV & " " & srcFile & " /convert=" & dstFile
Shell (myCom)
End Sub
2 Möglichkeit.
Du hast Office installiert, speziell Excel.
Excel kann Tif Image anzeigen. Starte einfach eine Instanz von Excel
(das koennt ich dir noch sagen *g)
FĂŒge dort das Bild ein(Das koennte dir evtl. Reinhard sagen)
Danach fĂŒhre folgenden source aus
Sub Convert()
Dim myChartObject As ChartObject, myShape As Shape
Dim bolfound As Boolean
Application.ScreenUpdating = False
For Each myShape In ActiveSheet.Shapes
If myShape.Type = msoPicture Then bolfound = True: Exit For
Next
If bolfound Then
myShape.CopyPicture Appearance:=xlScreen, Format:=xlPicture
Worksheets.Add
Set myChartObject = ActiveSheet.ChartObjects.Add(0, 0, myShape.Width, myShape.Height)
With myChartObject
.Activate
.Chart.Paste
.Chart.Export Filename:=Dein Ausgangsfile", FilterName:="JPG", Interactive:=False
End With
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
Set myChartObject = Nothing
Set myShape = Nothing
Application.ScreenUpdating = True
End If
End Sub
Hast du beides nicht installiert. So muesstest du den Haeder der Datei auslesen und dann das Bild auslesen und selber Konvertieren, was aber ein Heiden Aufwand ist!
MfG Alex
Hi,
lass deinen Hut (vorerst) mal auf )
Das mit Excel bringt mich ned weiter - da ich diesen âUmwegâ nicht wollte. Ich war auch auf der Richtung Umkonvertieren. Komm aber leider momentan zu garnienichts ( Werd mich am Wochenende wieder dranmachen.
GruĂ Rolf