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