月份: 2012-09

小试vbs对excel操作

由于工作需要,小试了一下excel的vbs,还蛮好用的,就是又要接触新语言。其实吧,以前也学过vb所以入门很快,就不算什么了。

先来说下需求吧,很简单,就是有一个工作表需要重排,按照模板的需要进行生成。

比如有一个电话表,有姓名和电话。现在要按照部门来分类,已经有一个部门人员姓名的模板了,现在只需要把电话表的对应姓名的电话,填到第二个部门人员姓名的模板就可以了。

下面是写的一段代码,电话默认在第四列,填到第二个表的第五列。假设表最大行数有700行,从第二行开始匹配。第四行为姓名列。

Private Sub CommandButton1_Click()
'使用要点,需要注意4、5列为同样的单元格式,不要有文本和数字穿插

Dim icell As Integer
Dim icell2 As Integer
icell2 = 2

For icell = 2 To 700

    '如果为空,则跳过
    If Sheet2.Cells(icell2, 4).Value = "" Then
        icell2 = icell2 + 1
        If icell2 = 700 Then
        Exit For
        End If
    End If

    If Sheet1.Cells(icell, 4).Value = "" Then
        icell = icell + 1
        If icell = 700 Then
        Exit For
        End If
    End If

    '如果姓名相同,把原姓名标红,表示已经填到模板表中
    If Sheet1.Cells(icell, 4).Value = Sheet2.Cells(icell2, 4).Value Then
        Sheet1.Cells(icell, 5).Font.Color = -16776961 '颜色 红
        '给模板表赋值
        Sheet2.Cells(icell2, 5).Value = Sheet1.Cells(icell, 5).Value
        '模板表行数加一
        icell2 = icell2 + 1
        '电话表回退
        icell = 2
    End If
Next icell

End Sub

学会放松

也许我们放松的方式就是出去旅游,吃点好吃的,或是买几件合身的衣服,或是静下心来看点人生的书籍。其实生活就是如此,要学会去看开这一切。说不定哪一天,又会相见,说不定哪一天又可以共同做些事儿,一起开心,一起进步。所以说,何必那么悲伤。我们的生活总会进来一些人,离去一些人。不管你如何挽回或是花多少时间在这个上面,都是徒劳无用的。不如去坦然面对。其实,我们生活中总要留下一些人,不会忘记。最重要的都会在,也许看到这篇文章的你,就是的。拉米,加油~

忽然想说

有一些特别想说的话,比如winmount就不要用了,会不稳定,比如瑞星就不要用了,这年头简单还是360。想当年装机和现在真的不一样了,一转眼4年已过。我在回忆些什么?我也不知道,只是这些都还印在脑海里,一直没有机会说,呵呵。人生难免遗憾,留下残缺的美,也不失为一种难忘的回忆。