excel vb代码编写

我有1500页的JPEG格式的图片,图片路径:D:\001-1文件夹里面。编号分别为1、2、……1500,想要指定打开某一页,输入页码(页码=文件名)就可以打开(以设置快... 我有1500页的JPEG格式的图片,图片路径:D:\001-1文件夹里面。编号分别为1、2、……1500,想要指定打开某一页,输入页码(页码=文件名)就可以打开(以设置快捷键的方式打开,用InputBox()输入数值),在excel里如何写代码呢?
要求:
①平时是Windows 照片查看器打开的,代码也用其打开。
②不能用控件,不用点击Click操作。
展开
 我来答
ynkmyuxiang
2013-08-26 · 超过17用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:37.2万
展开全部

在EXCEL中录制一个宏,并指定快捷键(例如Ctrl+g),修改该宏的VBA模块代码如下:

1、声明段:

Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, _
                 ByVal lpOperation As String, ByVal lpFile As String, _
                 ByVal lpParameters As String, ByVal lpDirectory As String, _
                 ByVal nShowCmd As Long) As Long
Const SW_SHOWNORMAL = 1


2、代码段(宏名不需要更改,只需要粘贴过程内的代码)

Sub Macro1()
'
' Macro1 Macro
'
' 快捷键: Ctrl+g
'
    Const FILE_PATH = "D:\001-1\"
    Const FILE_EXT = ".jpg"
    
    Dim page As String
    Dim filename As String
    Dim Ret As Long
    
    page = Trim(InputBox("请输入图片编码:", "输入", 1))
    If Len(page) > 0 Then
       filename = FILE_PATH & page & FILE_EXT
       If Dir(filename) = "" Then
          MsgBox "指定的文件" & filename & "不存在!"
       Else
          Ret = ShellExecute(0, "open", filename, vbNullString, Environ("windir"), SW_SHOWNORMAL)
       End If
    End If
    
End Sub
追问

我这个贴上就出现这种错误,不知是何原因呢?是第一行的。第二、三、四行错误提示为:

代码是贴在模块里。

为了检验是否正常,多写了一条语句Declare Sub MessageBeep Lib "User" (ByVal N As Integer)贴在下面,也能正常的。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式