我正在尝试根据条目上的时间戳在一行中的特定单元格中添加工作班次标签(Day,Swing,Grave)。如果没有时间戳,我希望它什么都不做。
时间戳的格式为“hh:mm:ss”,位于第6 / F行。
这是我到目前为止所拥有的。如果没有第4行,它会将所有条目标记为日,否则没有骰子。
@enc_id VARCHAR(36)
AS
BEGIN
SET NOCOUNT ON
DECLARE @enc_id_generate VARCHAR(36)
DECLARE enc_id_cursor CURSOR
FOR
(SELECT enc_id_generate
FROM my_table
WHERE txt_enc_id = @enc_id)
OPEN enc_id_cursor
FETCH NEXT FROM enc_id_cursor INTO @enc_id_generate
WHILE @@FETCH_STATUS = 0
BEGIN
-- Here is the stored procedure that needs to run for each record.
-- The only parameter it uses is @enc_id_generate
FETCH NEXT FROM enc_id_cursor INTO @enc_id_generate
END
CLOSE enc_id_cursor
DEALLOCATE enc_id_cursor
SET NOCOUNT OFF
END
答案 0 :(得分:2)
第四行给你带来意外情况的原因是因为你有Cell.Value
,而不是cel.value
:
If IsEmpty(cel.Value) Then Exit For
这将修复你的逻辑测试。此外,您需要指定Time
内容,否则只需使用00:00:00
。
修改: 高度 建议您将Option Explicit
添加到子版的顶部(或通过Excel选项)。如果您使用变量,这将强制您声明变量。这就是我在.1秒内捕获此错误的方法 - 我复制了你的宏,试图运行它,它立即突出显示该行。