首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >比较Excel中的单元格,如果它们不相似,则在上面添加空行

比较Excel中的单元格,如果它们不相似,则在上面添加空行
EN

Stack Overflow用户
提问于 2018-02-04 21:49:01
回答 1查看 66关注 0票数 0

我每天都会收到许多轮班时间的列表,通常格式如下:

代码语言:javascript
复制
0800-2000
0800-2000
0801-2000
0930-2130
0930-2200
1000-2200

以此类推。(每个在不同的行上,一次数百个)

我正在尝试编写一个宏/VBA,它通过在每个不同的开始时间上插入一个空行来对每个开始时间进行分组(忽略那些仅相隔1分钟的时间,这些被认为是相同的)。

我想到的概念是截断单元格,只接受前4个数字,使用左(A3,4)+0将其转换回整数。Dim 2变量为整数,Value1来自第一行,Value2来自下一行。然后运行IF语句,如果Value2 -Value1>2,则插入一个空行(EntireRow.Insert Shift = xlDown我认为是代码,如果错误,请更正)。

然后,我只需要对整个列重复操作,直到没有更多的轮班开始时间来分隔。我在想这样的事情,要么是'do,直到ISNUMBER = FALSE‘,要么我可以只运行一个预定义行数的宏,我知道行数总是足够多的。

EN

Stack Overflow用户

发布于 2018-02-04 21:58:41

这个简短的宏将执行您想要的操作:

代码语言:javascript
复制
Sub insert()
    Dim n As Long, i As Long, t1 As String, t2 As String

    n = Cells(Rows.Count, 1).End(xlUp).Row
    For i = n To 2 Step -1
        t1 = Split(Cells(i, 1), "-")(0)
        t2 = Split(Cells(i - 1, 1), "-")(0)
        If t1 <> t2 Then Cells(i, 1).EntireRow.insert
    Next i
End Sub

结果是:

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48608733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档