Foxtable(狐表)用户栏目专家坐堂 → 如何提取excel中的图片


  共有2874人关注过本帖树形打印复制链接

主题:如何提取excel中的图片

帅哥哟,离线,有人找我吗?
rjh4078
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 20:37:00 [只看该作者]

没有  运行的时候 第一行代码 就卡住 弹出输入密码的框

Dim file As String=args(0)
Dim r As Row=args(1)
Dim Ifo As new FileInfo(file)
Dim App As New MSExcel.Application

Dim Wb As MSExcel.WorkBook
try
    wb= App.WorkBooks.Open(file,password:="123")
Catch ex As Exception
    wb= App.WorkBooks.Open(file,password:="456")
End try
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)'指定工作表
ws.Activate

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/6/17 21:03:00 [只看该作者]

Dim file As String = "f:\dd2.xls"
Dim App As New MSExcel.Application

Dim Wb As MSExcel.WorkBook
'App.DisplayAlerts = False
Dim ok As Boolean = True
Dim psw() As String = {"111","222","123"}
Dim idx As Integer = 0
Do While ok AndAlso idx < 3
    Output.Show(psw(idx))
    try
        wb= App.WorkBooks.Open(file,password:=psw(idx))
        ok = False
    Catch ex As Exception
        idx += 1
        app.quit
    End try
Loop
If ok = False
    app.visible = True
End If


 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 21:47:00 [只看该作者]

老大 不行啊  还是弹出要输入密码的提示框  

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 21:52:00 [只看该作者]

Dim file As String=args(0)
Dim r As Row=args(1)
Dim Ifo As new FileInfo(file)
Dim App As New MSExcel.Application
App.DisplayAlerts = False
Dim Wb As MSExcel.WorkBook
Dim ok As Boolean = True
Dim psw() As String = {"123","456"}
Dim idx As Integer = 0
Do While ok AndAlso idx < 2
    '' Output.Show(psw(idx))
    try
        wb= App.WorkBooks.Open(file,password:=psw(idx))
        ok = False
    Catch ex As Exception
        idx += 1
        app.quit
    End try
Loop
If ok = False
    Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)'指定工作表
    ws.Activate
    Dim Rg As MSExcel.Range = Ws.UsedRange
    For j As Integer=0 To rg.count
        If j<29 Then
            Dim na As String
            na=Ifo.Name.Replace(Ifo.Extension,"")
            Dim i As Integer=0
            For Each s As object In rg.shapes
                s.CopyPicture(Appearance:=1, Format:=2)
                ClipBoard.GetImage.save(r("保存路径") & "\" & na & "-" & i & ".jpg")
                i=i+1
            Next
            Dim nr As Row=Tables("扫描记录").addnew
            nr("文件名")=Ifo.name
            nr("扫描时间")=Date.now
            nr("图片数量")=i
            nr.save
            app.quit
        End If
    Next
End If

这个是异步函数


调用代码
Dim r As Row=Tables("excel图片提取").current
If r.Isnull("扫描路径") OrElse r.Isnull("保存路径") Then
    MessageBox.show("请先设置扫描和保存路径!","提示")
    Return
End If
If FileSys.DirectoryExists(r("扫描路径")) =False
    MessageBox.show("扫描路径不存在!","提示")
    Return
End If
If FileSys.DirectoryExists(r("保存路径")) =False
    MessageBox.show("保存路径不存在!","提示")
    Return
End If
For Each file As String In filesys .GetFiles(r("扫描路径"))
    If file.EndsWith(".xls") OrElse file.EndsWith(".xlsx") Then
        Functions.AsyncExecute(Functions.Execute("scan",file,r))
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 21:53:00 [只看该作者]

现在提示 shapes 不是rg的成员 还有继续弹出密码输入框

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 21:54:00 [只看该作者]

如果我以为只读方式打开行不行呢 跳过密码?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105948 积分:538809 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/6/17 21:58:00 [只看该作者]

我测试没有问题。execl发上来测试

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 21:59:00 [只看该作者]


以下内容是专门发给有点蓝浏览



 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 22:04:00 [只看该作者]


以下内容是专门发给有点蓝浏览



 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3353 积分:24705 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/6/17 22:07:00 [只看该作者]

我描述错了 这个是打开设置了密码  不是工作簿保护密码

 回到顶部
总数 36 上一页 1 2 3 4 下一页