Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

Access数据导出到Excel固定格式,到一百多条时会出错,请问代码有什么问题吗?

ejihua  发表于:2017-09-10 10:39:38  
复制

Access数据导出到Excel固定格式,到一百多条时会出错,请问代码有什么问题吗?

点击下载此附件

 

Top
涛涛 发表于:2017-09-10 17:46:16

1234

看看这样行不行?



ejihua 发表于:2017-09-10 20:13:52

多谢回复,以前的导出仍然是一百多条会出错,1004.

新导出,可以导出数据,是不是就是系统的?不能导出图片?

Private Sub Command123_Click()
On Error GoTo Err_导出_Click
    DoCmd.OutputTo acOutputQuery, "订单查询", acFormatXLSX, , True
Exit_导出_Click:
    Exit Sub
Err_导出_Click:
    MsgBox "你已取消导出Excel操作!", vbOKOnly, "注意"
    Resume Exit_导出_Click


End Sub



红尘如烟 发表于:2017-09-12 14:23:17

赋值给单元格的时候,要强制转换为字符串类型,否则有些版本中,无法正确处理 Null 值。

objSheet.Range("A1") = rst!字段1
改成:

objSheet.Range("A1") = "" & rst!字段1

按模板导出示例(改).zip




ejihua 发表于:2017-09-12 23:01:52


版主,您好,多谢回复,测试无图时通过,不过加入图片,导出图片时,会出错提示。

是不是插入图片的代码还要修改?

 strPicName = strPicPath & rst!合同 & ".jpg"
        '如果该产品有图片,且图片有效,则插入图片
        If Dir(strPicName) <> "" Then
            objSheet.Range("A3").Select
            objSheet.ActiveSheet.Pictures.Insert(strPicName).Select
            '调整图片位置
            objSheet.Selection.ShapeRange.IncrementLeft 2
            objSheet.Selection.ShapeRange.IncrementTop 2
            '调整图片大小,注意必需要取消纵横比锁定,不然大小会有问题
            objSheet.Selection.ShapeRange.LockAspectRatio = 0
            objSheet.Selection.ShapeRange.Width = 60
            objSheet.Selection.ShapeRange.Height = 45
        End If

点击下载此附件



ejihua 发表于:2017-09-13 08:40:26
strPicName = strPicPath & rst!合同 & ".jpg"
        '如果该产品有图片,且图片有效,则插入图片
        If Dir(strPicName) <> "" Then
            objApp.Range("A3").Select
            objApp.ActiveSheet.Pictures.Insert(strPicName).Select
            '调整图片位置
            objApp.Selection.ShapeRange.IncrementLeft 2
            objApp.Selection.ShapeRange.IncrementTop 2
            '调整图片大小,注意必需要取消纵横比锁定,不然大小会有问题
            objApp.Selection.ShapeRange.LockAspectRatio = 0
            objApp.Selection.ShapeRange.Width = 60
            objApp.Selection.ShapeRange.Height = 45

        End If

objSheet改回objApp,通过,导出图片不报错。



ejihua 发表于:2017-09-13 08:43:55

另想请教,现在导出时鼠标指针不停转圈,看不到进度,怎么改回以前的导出时数据一条条向上跳动的效果?


导出到Excel中的图片是连接形式,发送给别人,对方看不到图片,能不能是插入的,不是连接?



ejihua 发表于:2017-09-21 21:26:32
strPicName = strPicPath & rst!合同 & ".jpg"
        '如果该产品有图片,则插入图片
        If Dir(strPicName) <> "" Then
            objApp.Range("A3").Select
            Dim lef
            Dim rit
            Dim log
            Dim wit
            lef = objApp.Range("A3").Left + 2
            rit = objApp.Range("A3").Top + 2
            log = objApp.Range("A3").Width - 4
            wit = objApp.Range("A3").Height - 4                    
            objApp.ActiveSheet.Shapes.AddPicture(strPicName, msoFalse, True, lef, rit, log, wit).Select              

        End If


参照别人的例子,插入图片的代码部分又改了一下,图片可以直接插入Excel了,不是链接方式。



总记录:7篇  页次:1/1 9 1 :