excel'de resim görüntüleme

Katılım
25 Mayıs 2005
Mesajlar
44
Excel Vers. ve Dili
Excel 2007 - Türkçe
Merhabalar,

Bir excel çalışma sayfasında yaklaşık 10.000 adet parça numarası A sütununda sıralanmış durumda. Bu 10.000 adet parçanın resimleri de, bilgisayarımda C:\Resimlerim klasörü altında jpg formatında bulunuyor. Resim dosyalarının ismi "parçano".jpg şeklinde.

Benim sormak istediğim şu: seçilen parça numarasına göre, parçanın resmini bir resim görüntüleme programında (örn: Microsoft Photo Editor) açtıran bir kod yazmak mümkün müdür?
 
Katılım
20 Nisan 2005
Mesajlar
206
Resim nasıl açılacak? Paint Brush ile veya başka bir resim gösterici içinde mi yoksa sadece resim olarak mı? Dosya yolunu Hyperlink yöntemi işinizi görmüyor mu? Yani Excel'in Insert seçeneğinde yer alan Object, Picture, Hyperlink seçeneklerinden hiç birirsi işinizi görmüyor mu merak ettim.

kolay gelsin.
 

mehmett

Altın Üye
Katılım
18 Mayıs 2005
Mesajlar
2,571
Excel Vers. ve Dili
Excel 2010 Türkçe
Parça numaralarını sağ tıklayıp Köprü'yü seçin ve bu parçayla ilgili olan resmi bilgisayarınızda bulup bağlantıyı gerçekleştirin.
 
Katılım
25 Mayıs 2005
Mesajlar
44
Excel Vers. ve Dili
Excel 2007 - Türkçe
bu parçayla ilgili olan resmi bilgisayarınızda bulup bağlantıyı gerçekleştirin
Peki 10.000 adet parça için köprü kurmayı kolaylaştıracak bir yöntem de önerebilir misiniz?
 
Katılım
20 Nisan 2005
Mesajlar
206
Aşağıdaki kodu kendinize uyarlarsanız. Bütün bir folder'de yer alan resimlerinizi kolayca sheete aktarabilirsiniz.

Kolay gelsin


Option Explicit

Private Declare Function SHGetPathFromIDList Lib "shell32.dll" _
Alias "SHGetPathFromIDListA" _
(ByVal pidl As Long, _
ByVal pszPath As String) As Long


Private Declare Function SHBrowseForFolder Lib "shell32.dll" _
Alias "SHBrowseForFolderA" _
(lpBrowseInfo As BROWSEINFO) As Long


Private Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type

Private FSO As Object
Private cnt As Long
Private arfiles
Private level As Long


Sub Folders()
Dim i As Long
Dim sFolder As String
Dim sh As Worksheet

Set FSO = CreateObject("Scripting.FileSystemObject")

arfiles = Array()
cnt = -1
level = 1

sFolder = GetFolder
ReDim arfiles(1, 0)
If sFolder <> "" Then
SelectFiles sFolder
On Error Resume Next
Set sh = Worksheets("Files")
On Error GoTo 0
If Not sh Is Nothing Then
sh.Cells.ClearContents
Else
Worksheets.Add.Name = "Files"
End If
With ActiveSheet
For i = LBound(arfiles, 2) To UBound(arfiles, 2)
.Hyperlinks.Add Anchor:=.Cells(i + 1, arfiles(1, i)), _
Address:=arfiles(0, i), _
TextToDisplay:=arfiles(0, i)
Next
.Columns("A:Z").EntireColumn.AutoFit
End With
End If

End Sub


'-----------------------------*------------------------------*------------
Sub SelectFiles(Optional sPath As String)
'-----------------------------*------------------------------*------------
Dim fldr As Object
Dim Folder As Object
Dim file As Object
Dim Files As Object


If sPath = "" Then
Set FSO = CreateObject("Scripting.FileSystemObject")
sPath = GetFolder
End If

Set Folder = FSO.GetFolder(sPath)

Set Files = Folder.Files
For Each file In Files
cnt = cnt + 1
ReDim Preserve arfiles(1, cnt)
arfiles(0, cnt) = Folder.path & "\" & file.Name
arfiles(1, cnt) = level
Next file

level = level + 1
For Each fldr In Folder.Subfolders
SelectFiles fldr.path
Next
level = level - 1

End Sub


'-----------------------------*------------------------------*--
Function GetFolder(Optional ByVal Name As String = _
"Select a folder.") As String
'-----------------------------*------------------------------*--
Dim bInfo As BROWSEINFO
Dim path As String
Dim oDialog As Long

bInfo.pidlRoot = 0& 'Root folder = Desktop

bInfo.lpszTitle = Name

bInfo.ulFlags = &H1 'Type of directory to

oDialog = SHBrowseForFolder(bInfo) 'display the dialog

'Parse the result
path = Space$(512)

GetFolder = ""
If SHGetPathFromIDList(ByVal oDialog, ByVal path) Then
GetFolder = Left(path, InStr(path, Chr$(0)) - 1)
End If

End Function
[/color]
 
Katılım
25 Mayıs 2005
Mesajlar
44
Excel Vers. ve Dili
Excel 2007 - Türkçe
Harika!
Birazcık da olsa makro öğrenmeye başladım ancak hiç böyle kodlama görmemiştim. Nasıl olduğunu hiç anlamadım ama işimi gördü..
Bir de anlayabilsem :):):):)

:dua: :dua: :dua:
Teşekkürler..
 
Katılım
20 Nisan 2005
Mesajlar
206
Karışık gelmiş olabilir. ekte dosya gönderiyorum.
 
Üst