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