2012年9月25日星期二

VBA处理数据

excel有很强大的数据统计功能,就连我数据库初始化数据都先转成excel形式,然后再ctrl + c, ctrl + v 贴进去,使用起来真是很方便。关于excel的书也非常的多,其中的大砖头也不少

但如果对excel不太熟悉的话,也会面对一些问题时束手无策。今天就遇到这样的一种情况,要合并数据,但合并的条件是以第一列的ID为准,也就是说第二列的数据会比较少。数据量比较大,10W以上,不可能纯手工。开始我想到导致数据库,再用程序处理,但后来一想这样做还要我去帮他处理剩下的数据,也不方便,于是就想用vba试试。其实VB是2004年学的,早就还给老师了

以下是写的代码,比较挫,边查边写

Sub export()
    Sheets("Sheet1").Select
    Dim cell_an, cell_bn, cell_a, cell_b
    cell_an = 1
    cell_bn = 1
    While Worksheets(1).Cells(cell_an, 1).Value <> ""
        cell_a = Worksheets(1).Cells(cell_an, 1).Value
        cell_b = Worksheets(1).Cells(cell_bn, 2).Value
       
        Worksheets(2).Cells(cell_an, 1).Value = cell_a
        If cell_a < cell_b Or cell_a > cell_b Then
            Worksheets(2).Cells(cell_an, 2).Value = 0
            Worksheets(2).Cells(cell_an, 3).Value = 0
            Worksheets(2).Cells(cell_an, 4).FormulaR1C1 = "=ABS(RC[-2]-RC[-1])"
            cell_an = cell_an + 1
        ElseIf cell_a = cell_b Then
            Worksheets(2).Cells(cell_an, 2).Value = Worksheets(1).Cells(cell_bn, 3).Value
            Worksheets(2).Cells(cell_an, 3).Value = Worksheets(1).Cells(cell_bn, 5).Value
            Worksheets(2).Cells(cell_an, 4).FormulaR1C1 = "=ABS(RC[-2]-RC[-1])"
            cell_an = cell_an + 1
            cell_bn = cell_bn + 1
        End If
       
    Wend
End Sub

2012年9月11日星期二

git 同步整个工程时出错

git向bitbucket进行https同步时,如果工程比较大,会出现如下错误:

git  result=22, HTTP code = 502

出现错误的原因是由于本地http缓存太小的缘故,所以要重新设置一下参数,可执行如下命令。

git config http.postBuffer 5242880000
通过以下命令查询
git config --get http.postBuffer

如果直接使用git config http.postBuffer 则将postBuffer变量就置为空了,现在具体这个值太大了会不会对我们有影响,网上的资料也非常的少,只有一个stackoverflow有一两个这方面的讨论,地址是:http://stackoverflow.com/questions/2702731/git-fails-when-pushing-commit-to-github

2012年9月10日星期一

Sublime Text 2和Eclipse快捷键总结(windows 7下测试通过)

 

使用快捷键可以节省很多时间,也能使开发显得更高端,以下我就Sublime Text 2常用且实用快捷键总结如下,当然,使用最多的ctrl + p 和ctrl + shift + p就不介绍了。
ctrl + shift + d 复制一行
ctrl + shift + 上下方向 交换上下行
ctrl + shift + k 删除一行
ctrl + x 剪切一行
ctrl + b 压缩js代码 (需要装YUI Compress包)

ctrl + k l 变小写
ctrl + k u变大写
ctrl + 回车 在下方插入一行
ctrl + shift + 回车 在上方插入一行
ctrl + alt + backspace 删除空白行

当然,除了使用Sublime做大部分编码外,由于工作需要,目前还能放弃elcipse,下面也就其快捷键操作方式总结如下:
ctrl + shift + r 打开想要的文件
ctrl + shift + t 打开声明的变量
ctrl + shift + 回车 上面加一行
ctrl + shift + x 变大写
ctrl + shift + y 变小写
ctrl + alt + 下方向(或上方向) 复制选中的行
ctrl + alt + j 向下合并行
ctrl + 回车 下面加一行
ctrl + t 打开继承

alt + 上方向(或下方向) 交换上下行
alt + . 将sysout补全
alt + / 恢复提示
alt + shift + r 重命名
alt + shift + m 抽取本地方法
alt + shift + j 给函数添加doc注释

ctrl + . 跳转到下一个错误或警告
ctrl + , 跳转到上一个错误或警告
ctrl + 2 L 快速定义局部变量