ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   get a picture width and height without inserting the picture (https://www.excelbanter.com/excel-programming/320677-get-picture-width-height-without-inserting-picture.html)

Dorothy

get a picture width and height without inserting the picture
 
I am using office 2003 and writing a VBA. I want to get a picture width and
height without inserting the picture to the worksheet. Is there any solution?

Norman Jones

get a picture width and height without inserting the picture
 
Hi Dorothy,

The following routine requires a reference to the Microsoft Scripting
Runtime Library ( Tools | References | Navigate to and Check the library)


Sub Tester1()

strFolder = "C:\Documents and Settings\My Pictures"
strFile = "Test.gif"

Set objShellApp = CreateObject("Shell.Application")
Set objFolder = objShellApp.NameSpace(strFolder)
Set objFolderItem = objFolder.ParseName(strFile)


Dim arrHeaders(39)
For i = 0 To UBound(arrHeaders)
arrHeaders(i) = objFolder.GetDetailsOf(objFolder.Items, i)
Next


For i = 0 To UBound(arrHeaders)
MsgBox i & vbTab & arrHeaders(i) _
& ": " & objFolder.GetDetailsOf(objFolderItem, i)
Next

End Sub


The above routine returns many more attributes than you have asked for. You
could restrict it to attributes of immediate interest, e.g.:

Sub Tester2()
strFolder = "C:\Documents and Settings\My Pictures"
strFile = "Test.gif"

Set objShellApp = CreateObject("Shell.Application")
Set objFolder = objShellApp.NameSpace(strFolder)
Set objFolderItem = objFolder.ParseName(strFile)


strSize = objFolder.GetDetailsOf(objFolderItem, 1)
MsgBox "Size: " & strSize


strDatePT = objFolder.GetDetailsOf(objFolderItem, 25)
MsgBox "Date Picture Taken: " & strDatePT

End Sub

---
Regards,
Norman



"Dorothy" wrote in message
...
I am using office 2003 and writing a VBA. I want to get a picture width and
height without inserting the picture to the worksheet. Is there any
solution?





All times are GMT +1. The time now is 10:45 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com