vb小工具-----txt转为excel
生活随笔
收集整理的這篇文章主要介紹了
vb小工具-----txt转为excel
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前段時間用vb做了一個小軟件,用來將下位機存儲的運行記錄(txt格式)轉為excel格式。?源代碼如下,供需要借鑒的朋友來下載,代碼有點亂,但是功能是經過驗證了的。本來是想將工程作為附件插入進來,弄了半天居然沒有發現這個功能,有點無語,直接上代碼吧。 Public?xx?As?String
Public?temp?As?String
Public?file_length?As?Long
Public?file_number?As?Long
Private?Sub?Command1_Click()
ProgressBar1.Visible?=?True
Dim?H()?As?String,?L()?As?String,?i?As?Integer,?j?As?Integer,?a()?As?String
Dim?SaveFile?As?String
Dim?xlApp?As?Excel.Application
Dim?xlBook?As?Excel.Workbook
Dim?xlSheet?As?Excel.Worksheet
Set?xlApp?=?CreateObject("Excel.Application")?'創建EXCEL對象
Set?xlBook?=?xlApp.Workbooks.Add?'打開已經存在的EXCEL工件簿文件
xlApp.Visible?=?True?'設置EXCEL對象可見(或不可見)
Set?xlSheet?=?xlBook.Worksheets("Sheet1")?'設置活動工作表
'************************************************************* Open?xx?For?Input?As?#1?'open?the?file
xlSheet.Cells(1,?1)?=?"序號"
xlSheet.Cells(1,?2)?=?"時間"
xlSheet.Cells(1,?3)?=?"模式"
xlSheet.Cells(1,?4)?=?"電流(A)"
xlSheet.Cells(1,?5)?=?"總電壓(V)"
xlSheet.Cells(1,?6)?=?"容量(AH)"
xlSheet.Cells(1,?7)?=?"告警類型"
xlSheet.Cells(1,?8)?=?"環境溫度(C)"
xlSheet.Cells(1,?9)?=?"電池溫度1"
xlSheet.Cells(1,?10)?=?"電池溫度2"
xlSheet.Cells(1,?11)?=?"電池溫度3"
xlSheet.Cells(1,?12)?=?"電池溫度4"
xlSheet.Cells(1,?13)?=?"電池溫度4"
xlSheet.Cells(1,?14)?=?"電壓1"
xlSheet.Cells(1,?15)?=?"電壓2"
xlSheet.Cells(1,?16)?=?"電壓3"
xlSheet.Cells(1,?17)?=?"電壓4"
xlSheet.Cells(1,?18)?=?"電壓5"
xlSheet.Cells(1,?19)?=?"電壓6"
xlSheet.Cells(1,?20)?=?"電壓7"
xlSheet.Cells(1,?21)?=?"電壓8"
xlSheet.Cells(1,?22)?=?"電壓9"
xlSheet.Cells(1,?23)?=?"電壓10"
xlSheet.Cells(1,?24)?=?"電壓11"
xlSheet.Cells(1,?25)?=?"電壓12"
xlSheet.Cells(1,?26)?=?"電壓13"
xlSheet.Cells(1,?27)?=?"電壓14"
xlSheet.Cells(1,?28)?=?"電壓15"
xlSheet.Cells(1,?29)?=?"電壓16" For?j?=?0?To?file_number
Line?Input?#1,?temp
H?=?Split(temp,?vbTab)
For?i?=?0?To?file_length?-?1
xlSheet.Cells(j?+?2,?i?+?1)?=?H(i)
ProgressBar1.Value?=?i?+?1
Next?i
Next?j
Close?#1?'close?the?file
SaveFile?=?"c:\yu.xls"
If?Dir(SaveFile)?<>?""?Then?Kill?SaveFile
xlBook.SaveAs?FileName:=SaveFile?'保存工作表,結束時一定別忘了保存
xlBook.Close?(True)?'關閉工作簿?這里的True表示退出時保存修改
xlApp.Quit?'結束EXCEL對象
Set?xlApp?=?Nothing?'釋放xlApp對象
MsgBox?"文件已成功導出到"?&?SaveFile
End?Sub Private?Sub?Command2_Click()
txt_file.FileName?=?""
txt_file.Flags?=?vbOFNFileMustExist
txt_file.Filter?=?"All?Files|*.*|(*.txt)|*.txt"
txt_file.FilterIndex?=?2
txt_file.DialogTitle?=?"選擇需要轉換的Txt文件"
txt_file.Action?=?1
If?txt_file.FileName?=?""?Then Else
xx?=?txt_file.FileName
Open?xx?For?Input?As?#1?'open?the?file
Line?Input?#1,?temp
a?=?Split(temp,?vbTab)
file_length?=?UBound(a)?-?LBound(a)?+?1
ProgressBar1.Max?=?file_length Do?While?Not?EOF(1)
Line?Input?#1,?temp
file_number?=?file_number?+?1
Loop
file_number?=?file_number
Close?#1?'close?the?file
End?If
End?Sub Private?Sub?Form_Load()
xx?=?""
file_length?=?0
file_number?=?0
ProgressBar1.Visible?=?False
End?Sub
Public?temp?As?String
Public?file_length?As?Long
Public?file_number?As?Long
Private?Sub?Command1_Click()
ProgressBar1.Visible?=?True
Dim?H()?As?String,?L()?As?String,?i?As?Integer,?j?As?Integer,?a()?As?String
Dim?SaveFile?As?String
Dim?xlApp?As?Excel.Application
Dim?xlBook?As?Excel.Workbook
Dim?xlSheet?As?Excel.Worksheet
Set?xlApp?=?CreateObject("Excel.Application")?'創建EXCEL對象
Set?xlBook?=?xlApp.Workbooks.Add?'打開已經存在的EXCEL工件簿文件
xlApp.Visible?=?True?'設置EXCEL對象可見(或不可見)
Set?xlSheet?=?xlBook.Worksheets("Sheet1")?'設置活動工作表
'************************************************************* Open?xx?For?Input?As?#1?'open?the?file
xlSheet.Cells(1,?1)?=?"序號"
xlSheet.Cells(1,?2)?=?"時間"
xlSheet.Cells(1,?3)?=?"模式"
xlSheet.Cells(1,?4)?=?"電流(A)"
xlSheet.Cells(1,?5)?=?"總電壓(V)"
xlSheet.Cells(1,?6)?=?"容量(AH)"
xlSheet.Cells(1,?7)?=?"告警類型"
xlSheet.Cells(1,?8)?=?"環境溫度(C)"
xlSheet.Cells(1,?9)?=?"電池溫度1"
xlSheet.Cells(1,?10)?=?"電池溫度2"
xlSheet.Cells(1,?11)?=?"電池溫度3"
xlSheet.Cells(1,?12)?=?"電池溫度4"
xlSheet.Cells(1,?13)?=?"電池溫度4"
xlSheet.Cells(1,?14)?=?"電壓1"
xlSheet.Cells(1,?15)?=?"電壓2"
xlSheet.Cells(1,?16)?=?"電壓3"
xlSheet.Cells(1,?17)?=?"電壓4"
xlSheet.Cells(1,?18)?=?"電壓5"
xlSheet.Cells(1,?19)?=?"電壓6"
xlSheet.Cells(1,?20)?=?"電壓7"
xlSheet.Cells(1,?21)?=?"電壓8"
xlSheet.Cells(1,?22)?=?"電壓9"
xlSheet.Cells(1,?23)?=?"電壓10"
xlSheet.Cells(1,?24)?=?"電壓11"
xlSheet.Cells(1,?25)?=?"電壓12"
xlSheet.Cells(1,?26)?=?"電壓13"
xlSheet.Cells(1,?27)?=?"電壓14"
xlSheet.Cells(1,?28)?=?"電壓15"
xlSheet.Cells(1,?29)?=?"電壓16" For?j?=?0?To?file_number
Line?Input?#1,?temp
H?=?Split(temp,?vbTab)
For?i?=?0?To?file_length?-?1
xlSheet.Cells(j?+?2,?i?+?1)?=?H(i)
ProgressBar1.Value?=?i?+?1
Next?i
Next?j
Close?#1?'close?the?file
SaveFile?=?"c:\yu.xls"
If?Dir(SaveFile)?<>?""?Then?Kill?SaveFile
xlBook.SaveAs?FileName:=SaveFile?'保存工作表,結束時一定別忘了保存
xlBook.Close?(True)?'關閉工作簿?這里的True表示退出時保存修改
xlApp.Quit?'結束EXCEL對象
Set?xlApp?=?Nothing?'釋放xlApp對象
MsgBox?"文件已成功導出到"?&?SaveFile
End?Sub Private?Sub?Command2_Click()
txt_file.FileName?=?""
txt_file.Flags?=?vbOFNFileMustExist
txt_file.Filter?=?"All?Files|*.*|(*.txt)|*.txt"
txt_file.FilterIndex?=?2
txt_file.DialogTitle?=?"選擇需要轉換的Txt文件"
txt_file.Action?=?1
If?txt_file.FileName?=?""?Then Else
xx?=?txt_file.FileName
Open?xx?For?Input?As?#1?'open?the?file
Line?Input?#1,?temp
a?=?Split(temp,?vbTab)
file_length?=?UBound(a)?-?LBound(a)?+?1
ProgressBar1.Max?=?file_length Do?While?Not?EOF(1)
Line?Input?#1,?temp
file_number?=?file_number?+?1
Loop
file_number?=?file_number
Close?#1?'close?the?file
End?If
End?Sub Private?Sub?Form_Load()
xx?=?""
file_length?=?0
file_number?=?0
ProgressBar1.Visible?=?False
End?Sub
轉載于:https://blog.51cto.com/yuzhenjin/1150955
總結
以上是生活随笔為你收集整理的vb小工具-----txt转为excel的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 老板,请给我多点培养【写给老板的一封信】
- 下一篇: Fedora的ifconfig命令