如果单元格内容已通过,则进行下一次迭代

问题描述 投票:0回答:1

因此,按照我的遍历表的代码,连接到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列……]]

excel excel-vba while-loop exists goto
1个回答
0
投票

我现在已经遇到过几次这个问题,并且倾向于在每个循环上使用Worksheetfunction.countif来检查同一图形的任何实例是否出现在该图形的上方/下方。

在您的情况下,看起来像;

© www.soinside.com 2019 - 2024. All rights reserved.