ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
12
返回列表 发新帖
楼主: msdf

[求助] 为什么next没有for?

[复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-6 16:11 | 显示全部楼层
zopey 发表于 2018-8-6 14:15
For i = 3 To Range("A65536").End(xlUp).Row
For Arr_CateNumI = 0 To Arr_CateNumS
If Cells(i, 2).Val ...

用你的方法的确就好了!!非常感谢!!!我下面的代码,是插入数据到数据库,和上面的是一起的,不知道为什么执行到for s =i那一句后,就直接跳到对话框那里去了,并没有执行insert语句,能帮我看一看吗T T
  1. For S = i To Range("A65536").End(xlUp).Row
  2. For l = 1 To Range("IV1").End(xlToLeft).Column
  3. If IsNull(Cells(S, l)) = True Then
  4. Cells(S, l) = Null
  5. End If
  6. Next l
  7. Sql = "insert into list values('" & Cells(S, 2) & "','" & Cells(S, 3) _
  8.                 & "','" & Cells(S, 4) & "','" & Cells(S, 5) & "','" & Cells(S, 6) & "'," & Cells(S, 7) & "," & Cells(S, 8) & ",'" & Cells(S, 9) & "','" & Cells(S, 10) & "'," & Cells(S, 11) & "," & Cells(S, 12) & ",'" & Cells(S, 13) & "', '" & Cells(S, 14) & "', '" & Cells(S, 15) & "','" & Cells(S, 16) & "'," & Cells(S, 17) & ",'" & Cells(S, 18) & "'," & Cells(S, 19) & "," & Cells(S, 20) & "," & Cells(S, 21) & "," & Cells(S, 22) & "," & Cells(S, 23) & ",'" & Cells(S, 24) & "','" & Cells(S, 25) & "','" & Cells(S, 26) _
  9.                 & "','" & Cells(S, 27) & "','" & Cells(S, 28) & "','" & Cells(S, 29) & "','" & Cells(S, 30) & "'," & Cells(S, 31) & "," & Cells(S, 32) & "," & Cells(S, 33) & "," & Cells(S, 34) & "," & Cells(S, 35) & "," & Cells(S, 36) & "," & Cells(S, 37) & "," & Cells(S, 38) & "," & Cells(S, 39) & "," & Cells(S, 40) & "," & Cells(S, 41) & "," & Cells(S, 42) & "," & Cells(S, 43) & "," & Cells(S, 44) _
  10.                 & "," & Cells(S, 45) & "," & Cells(S, 46) & "," & Cells(S, 47) & ",'" & Cells(S, 48) & "','" & Cells(S, 49) & "')"
  11. cnn.Execute Sql
  12. Next S
  13. MsgBox "数据添加成功!", vbExclamation
  14. Dim xRs As New ADODB.Recordset
  15.     Sql = " Select * from list"
  16.     xRs.Open Sql, cnn, 1, 3
  17.      Sheet2.Range(Sheet2.Range("A3"), Sheet2.Range("A2").End(xlDown)).EntireRow.Clear
  18.     Sheet2.Range("A3").CopyFromRecordset xRs
  19.     xRs.Close
  20. cnn.Close
  21. Set cnn = Nothing
  22. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2018-8-6 16:28 | 显示全部楼层
msdf 发表于 2018-8-6 16:11
用你的方法的确就好了!!非常感谢!!!我下面的代码,是插入数据到数据库,和上面的是一起的,不知道为 ...

For S = i To Range("A65536").End(xlUp).Row   

这里设置暂停,观察 i 值 是多少,s 值 又是多少,按f8 追踪调试。

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-8-6 16:37 | 显示全部楼层
zopey 发表于 2018-8-6 16:28
For S = i To Range("A65536").End(xlUp).Row   

这里设置暂停,观察 i 值 是多少,s 值 又是多少,按 ...

嗯嗯,我调试了,这里i是4(根据我的表来看是对的),s是空值,然后就直接跳到了msgbox数据添加成功那句,这个时候s也是4了,不知道为什么中间这一段会被跳过呢?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-11 16:56 , Processed in 0.018575 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表