Access交流中心

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

导入不入数据

张华  发表于:2021-03-17 17:03:12  
复制

点击下载此附件

各位大神导不入数据,请指导,感谢!

 

Top
西出阳关无故人 发表于:2021-03-17 17:43:09
Private Sub Command5_Click()
    On Error GoTo err
    Dim strPathName As String           '输出文件路径名
    Dim objApp As Object              'Excel程序
    Dim objBook As Object               'Excel工作簿
    Dim rst As Object                   '子窗体记录集
    Dim curSum As Currency              '折后金额总计
    Dim intN As Integer                 '循环计数器


    '通过对话框取得Excel文件名
    With FileDialog(3)    'msoFileDialogOpen
        .InitialFileName = CurrentProject.Path
        .Filters.Clear
        .Filters.Add "Microsoft Excel", "*.xlsx"
        If .Show Then strPathName = .SelectedItems(1)
    End With
    '对话框取消则退出过程
    If strPathName = "" Then Exit Sub


    '设置鼠标指针为沙漏形状
    '    DoCmd.Hourglass True
    '创建Excel对象
    Set objApp = CreateObject("Excel.Application")
    '打开模板文件
    Set objBook = objApp.Workbooks.Open(strPathName)
    '选中激活“销售订单”工作表
    'objBook.Sheets("sheet1").Select    '没有"sheet1"这个表名
    'objApp.Visible = True
    ' With objApp.ActiveSheet    '如果用ActiveSheet属性,就要事先设置属性objApp.Visible = True
    With objBook.Sheets("表1")
        intN = 2
        Set rst = Me.表1子窗体.Form.Recordset


        Do Until .Range("A" & intN) = ""
            Debug.Print intN, .Range("A" & intN)
            rst.AddNew
            rst.Fields(0) = .Range("A" & intN)
            rst.Fields(1) = .Range("b" & intN)
            rst.Update
            intN = intN + 1
            Me.Text7 = intN
        Loop
    End With


    MsgBox "导入成功!", vbInformation, "提示"
    objBook.Close
    Set objBook = Nothing
    Set objApp = Nothing
    Set rst = Nothing
    Exit Sub
err:
    MsgBox err.Description
    objBook.Close
    Set objBook = Nothing
    Set objApp = Nothing
    Set rst = Nothing
End Sub


张华 发表于:2021-03-18 08:43:31
出现“数据类型转换错误”,

西出阳关无故人 发表于:2021-03-18 10:01:07

检查acc表字段数据类型和Excel表的对应列的数据类型是否匹配.特别是acc为数字Excel为文本的情况.

在导入的时候,由Excel文本变为acc数字或acc日期,通常会出现这种错误.反之则不会.



张华 发表于:2021-03-18 14:11:41

现在表的字段只有短文本和数字,没别的,

但是EXCEL的字段应该也是这样,因为一开始就是用EXCEL导进去的

如果是这样修改成与原来的短文本和数字的字段格式一致



西出阳关无故人 发表于:2021-03-18 15:23:45
你的实例没有问题呀?你自己测试一下你发的实例看看.

张华 发表于:2021-03-18 16:57:12
实例的日期与数量没导入

西出阳关无故人 发表于:2021-03-18 18:13:59

...

  rst.AddNew
            rst.Fields(0) = .Range("A" & intN)
            rst.Fields(1) = .Range("b" & intN)

            rst.Fields(2) = .Range("C" & intN)'增加导入字段
            rst.Fields(3) = .Range("D" & intN)'增加导入字段

            rst.Update

...



张华 发表于:2021-03-19 10:50:59
老师!这个没问题运用到别的地方就有问题,能否加个微信帮忙确认一下?

张华 发表于:2021-03-19 11:13:33
现在就是出现字段增多后,提示”下标越界“

虽虽TV 发表于:2021-03-19 18:06:58

打开EXCEL表,只选中表中具有数据的行和列,不能多选,复制到另一张表中,导入时,从另一张表中导入。

试一下。



张华 发表于:2021-03-22 08:51:58
不行

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