gpt4 book ai didi

excel - 如何使用 vba Excel 2010 从形状中提取 exif 数据?

转载 作者:行者123 更新时间:2023-12-03 03:18:35 27 4
gpt4 key购买 nike

我正在从事的项目从 MySQL 数据库中的 blob 导入图像。有时这些图像会旋转 90 度,用户需要手动将它们旋转到正确的方向。

所以我的问题是,有人知道使用 vba 从 Excel 形状中提取 exif 数据的函数吗?我试图避免任何第三方应用程序执行此操作。

最佳答案

我最终在social.msdn.microsoft.com 的内部发现了一些东西。

这是解决方案。需要 Microsoft Shell 控件和自动化引用。感谢 Social.msdn.microsoft.com 上的 OssieMac。 Link to page of post

将它指向一个形状似乎不起作用(给我一个错误),但无论如何我都将我的 mysql blob 保存到电脑上的临时文件中,所以这对我来说无论如何都是可行的。

Sub ListMetadata()

Dim fileFolder As String
Dim fileName As String
Dim objShell As Shell32.Shell
Dim objFolder As Shell32.Folder
Dim objItem As Shell32.FolderItem
Dim i As Long

'Edit following line to your path. (Note NO back slash on end.)
fileFolder = ThisWorkbook.Path & "\Picture Test"

'Can insert path like following if you prefer.
'fileFolder = "C:\Users\OssieMac\Documents\Excel\Test Macros\Picture Test"

'Edit following line to your file name
fileName = "DSC00093.JPG"

Set objShell = New Shell
Set objFolder = objShell.Namespace(fileFolder)
Set objItem = objFolder.ParseName(fileName)

With objFolder
For i = 1 To 1000
Sheets("Sheet1").Cells(i, "A") = .GetDetailsOf(objItem.Name, i)
Sheets("Sheet1").Cells(i, "B") = .GetDetailsOf(objItem, i)
Next i
End With

Set objItem = Nothing
Set objFolder = Nothing
Set objShell = Nothing

End Sub

关于excel - 如何使用 vba Excel 2010 从形状中提取 exif 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52236690/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com