|
如何在ACCESS中引用指定文件夹的照片
用Access的话,建议建立一个字段存放相片路径,然后再在报表中引用过来就可以了。
如果放在固定的位置,可以通过建立更新查询直接用字符串把路径批量写入:
(例如:Update 学生信息表 set 学生信息表.相片="C:\学生信息\"&[学生信息表]![姓名]&".jpg")
其实,这是俺在百度知道里回答的问题(O(∩_∩)O~,俺凭这个换取了一个百度水晶鼠标送给朋友了)。不过想来对大家有所帮助,就发在这里了。Sub test()
'定义一个文件对话框以获取文件
Dim fd As FileDialog
'定义获取文件名的字符串
Dim fn As String
'设置为文件拾取器
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
'定义按钮名称和对话框标题,并设置为允许多重选择以达到批量完成的效果
.ButtonName = "浏览"
.Title = "请浏览图片文件"
.AllowMultiSelect = True
'清空全部格式,增加图片格式以免用户插入不合法的文件。
.Filters.Clear
.Filters.Add "支持的图片文件(*.JPG,*.PNG,*.GIF,*.TIFF,*.JPEG,*.BMP)", "*.JPG,*.PNG,*.GIF,*.TIFF,*.JPEG,*.BMP"
If .Show = -1 Then
'选择后,开始计算所选文件个数,并选择F1为图片插入初始单元格。如有需要,请自行改动。
For i = 1 To .SelectedItems.Count
fn = .SelectedItems(i)
Sheets(1).Range("F" & i).Select
'设置标准横高和列宽。请先插入一张图片,根据实际需要设置。
Selection.RowHeight = 89.25
Selection.ColumnWidth = 18.88
'选择并调整图片位置
ActiveSheet.Pictures.Insert(fn).Select
Selection.ShapeRange.IncrementLeft 2
Selection.ShapeRange.IncrementTop 2
'取消纵横比,以便设置所有图片大小一致。
Selection.ShapeRange.LockAspectRatio = 0
Selection.ShapeRange.Width = 112
Selection.ShapeRange.Height = 85
Next
End If
End With
End Sub
复制代码大家喜欢的话就下载下来玩玩吧。
baokun999,如果您要查看本帖隐藏内容请回复
应2L的要求,加上了文件名。主要用InstrRev函数和Mid函数,基本就可以截取到文件名字符串了。
===========http://club.excelhome.net/thread-741222-1-1.html==============
[ 本帖最后由 52UEXCEL 于 2011-8-3 08:54 编辑 ]
|
|