因此,按照我的遍历表的代码,连接到sql server并发送表的数据,我有了一个小的约束:我按单元格逐行发送5400行数据和13列数据(实际上并不是那么慢!),但是我需要在某些单元格上设置条件:如果我已经发送了单元格的内容(例如:一个客户端数据库中已发送的数字)我不想将其插入两次,因此请转到下一个迭代。这是我的循环的简化版本:
nrow = 1
虽然My_range.Offset(nrow).Value <>“”'如果单元格不为空,则继续
'连接到数据库并创建一个发送数据的命令
Set mobjCmd =新的ADODB.Command 与mobjCmd
.ActiveConnection = mobjConn
.CommandText = "INSERT_PRODUCT"
.CommandType = adCmdStoredProc
.CommandTimeout = 0
'append the cell of the second row, first column in the db in the Client_id column in my SQL table
.Parameters.Append .CreateParameter("@Client_id", adChar, adParamInput, 255, Worksheets("My_Sheet").Range("A1").Offset(nrow, 0).Value)
.Execute
Wend
基本上我想到的是:
如果...则转到NextIteration
如果结束,则结束>>
NextIteration:my_next_iteration
但是如何设置I / O“ ...”,以便如果看到已经发送过的client_id,则转到下一个迭代。
感谢您的帮助!
因此,按照我的遍历表的代码,连接到sql server并发送表的数据,我还有一个小限制:我发送的内容类似5400行和数据行的13列……]]
我现在已经遇到过几次这个问题,并且倾向于在每个循环上使用Worksheetfunction.countif
来检查同一图形的任何实例是否出现在该图形的上方/下方。
在您的情况下,看起来像;