根据工程师的经验,他们会在数据记录应用程序上按下一个按钮,该按钮将自动进入" Checkpoint"进入电子表格。
如果没有按下那个按钮,就会出现NO" Checkpoint"放置后,细胞将保持空白。
为了计算/完成我的宏,我需要弄清楚如何添加" Checkpoint"在"信号交叉口"之上但是,如果" Checkpoint"已经不存在于单词"信号交叉点"
之上重要注意事项:只有三(3)个和#34;信号交叉口"在电子表格上。
它们总是在G列中,但从不在同一行。
有些表格没有"检查点"总之,有些人会有两(2)个"检查点"等
总共应该有3个检查点(自动或手动添加)3"信号交叉口"总计(远离自动添加)
实施例
摹
1
2
3(需要MACRO寻找下面的信号化交叉点,在此选择之上移动1个电池 - 然后更改值为"检查点")
4信号交叉口
5
6
7
8
9
10个
11(然后重新搜索并找到下面的信号化交叉点,在此选择之上移动1个电池 - 然后更改值为"检查点")
12信号交叉口
13个
14个
15个
16检查点'自动进入工程师' - (因为这一个已经进入,不能忘记并且关闭。)
17个
18个
19信号交叉口
20个
对于冗长感到抱歉,如果这还不够清楚......我会采取一些截图来帮助澄清。
我有为其他元素编写的代码,所以我将添加这个新代码。
答案 0 :(得分:0)
这样的事情:
Const VAL_SIG As String = "Signalized Intersection"
Const VAL_CHECK As String = "Checkpoint"
Dim bSig As Boolean, bCheck As Boolean, c As Range
Dim n As Long, sht As Worksheet
Set sht = ActiveSheet
Set c = sht.Range("G8")
Do While Application.CountA(c.EntireRow) > 0
If c.Value = VAL_CHECK Then
bCheck = True
ElseIf c.Value = VAL_SIG Then
If Not bCheck Then c.Offset(-1, 0) = VAL_CHECK
bCheck = False
n = n + 1
If n = 3 Then Exit Do 'only expecting 3
End If
Set c = c.Offset(1, 0)
Loop