现在的位置: 首页 > 综合 > 正文

使用VBA,20行代码 将Excel数据导出

2013年10月05日 ⁄ 综合 ⁄ 共 1287字 ⁄ 字号 评论关闭

1、满足需求

    程序员免不了与策划或运维打交道。通常情况是有配置数据的更改。但是即便是程序员也有写错的时候。更改一个配置,使用更直观的excel,成为了单写配置工具的替代方案。这里介绍一个将Excel的数据导出生成文件的方法。

2、设计Excel

      我们以植物大战僵尸2为例。其中有植物图鉴,这些数据明显是配置的,而且描述部分可能会更改。假设,我们有这样的一个Excel。
    
    

    数据直观也简单。假设这就是全部要输出的信息啦。

3、VBA

    使用VBA,首先我们要打开VBA的编辑界面,找到Excel选项,进行设置,我使用的是Excel2010,在文件->excel选项中:
    
    勾选开发工具,这样上面的菜单栏中就会出现开发工具菜单。
  
  

    点击Visual Basic,就进入vba编辑界面了。

    右击Excel对象文件夹,添加一个模块:

    

    在右侧的模块编辑框中加入代码:
    
Option Explicit
Sub writeOutData()
    Dim result As String
    Dim i As Integer
    Dim j As Integer
    For i = 3 To 10
        For j = 2 To 10
            If Len(Sheet1.Cells(i, j).Value) > 0 Then
                result = result & Sheet1.Cells(2, j) & " = " & Sheet1.Cells(i, j).Value & Chr(10)
            End If
        Next
    Next
    Open ThisWorkbook.Path & "\OutPut.txt" For Binary As #1
        Put #1, , result
        Close #1
    MsgBox "OutPut Success!"
End Sub

    很清爽是吧。保存,遇到这个对话框:
    
    
    这里微软出于安全性的考虑默认excel是不加载宏的。因此这里我们选否,在接下来的界面里将其保存为.xlsm

    

    保存之后。我们vba的编辑就完成了。

4、添加操作按钮

     接下来我们要在界面上放一个大按钮来调用这个宏方法。
    首先选取开发工具->插入->表单控件的第一个。拖动鼠标,绘制一个按钮。

    

    拖动后,在弹出的界面选择刚才我们写的宏

  
    点击确定。我们就能看到这个按钮啦,再右击,选择编辑名称,将其改为“导出”。
   

  好了,现在点击这个按钮,你会看到弹出的对话框,并且在次Excel同级目录会有一个名为output.txt的文件,记录我们的信息。生成了文件是这样的:
  

5、总结

    经过设计表格、编写vba脚本、添加界面操作这些步骤,我们就可以导出Excel的信息了。整个过程非常方便。如果用c++来实现这样一个需求,还是很麻烦的。而这种方法只需要不超过20行代码。当然我们也可以增加逻辑,定制化数据的处理与输出。

    Excel文件下载地址:http://download.csdn.net/detail/fansongy/5955971


本篇博客出自阿修罗道,转载请注明出处:http://blog.csdn.net/fansongy/article/details/9988127
  
    
【上篇】
【下篇】

抱歉!评论已关闭.