خواندن فایل تکست و تبدیل آن به فایل اکسل توسط CommandButton
#1
Note 
سلام دوستان
دار م یه برنامه مینویسم که :
1. ابتدا فایل تکست را توسط CommandButton بصورت Browse دریافت کنه
2. اون فایل تکست دریافتی را به یک فایل اکسل تبدیل کنه
حالا من، تونستم قسمت شماره 2 را بصورت کامل انجام بدم منتهی توی این کدی که نوشتم، آدرس فایل تکست ثابته که من میخوام هر فایل تکست دلخواهی را Browse کنم و تبدیل به یه فایل اکسل بشه.
اینم از کدهای نوشته شده:



این کلید همون قسمت 2 را انجام میده ولی ایرادش اینه که آدرس فایل تکست ثابته 

کد:
Private Sub Command1_Click()
Dim objUser, strExcelPath, objExcel, objSheet, objFSO, objFile, aline, aLines, irow, icol

Const ForReading = 1

Set objFSO = CreateObject(\"Scripting.FileSystemObject\")

آدرس فایل تکست
Set objFile = objFSO.OpenTextFile(\"C:1.txt\", ForReading)
strExcelPath = \"C:\\testing.xls\"

\' Bind to Excel object.
\'On Error Resume Next
Set objExcel = CreateObject(\"Excel.Application\")
If (Err.Number 0) Then
On Error GoTo 0
Wscript.Echo \"Excel application not found.\"
Wscript.Quit
End If
On Error GoTo 0

objExcel.Visible = True
objExcel.Workbooks.Add

Set objSheet = objExcel.ActiveWorkbook.Worksheets(1)
objSheet.Name = \"testing\"

aLines = Split(objFile.ReadAll, vbNewLine)
For irow = 1 To UBound(aLines) + 1
aline = Split(aLines(irow - 1), \",\")
For icol = 1 To UBound(aline) + 1
objSheet.Cells(irow, icol).Value = aline(icol - 1)
Next \' icol
Next \' irow
End Sub


توی این کلید هم آدرس فایل تکست قراره وارد بشه و بعدا در کلید بالایی مورد استفاده بشه جهت تبدیل به فایل اکسل 
کد:
Private Sub Command2_Click()
CommonDialog1.Filter = \"All files (*.*)|*.*\"
CommonDialog1.DialogTitle = \"Select File\"
CommonDialog1.ShowOpen

MsgBox CommonDialog1.FileName
End Sub

Private Sub Form_Load()

End Sub

ضمنا از ویژوال بیسیک 6 استفاده می کنم
چطور میتونم فایل برنامه را Attach کنم؟
آخه الان برنامه چپ به راست نیومده

آخرین ویرایش: 26-05-2015 ساعت 07:51، توسط Daniel
پاسخ
#2
سلام 
اول برو به Project > Components و Microsoft Common Dialog Control 6.0 رو فعال کن

بعد این کد رو بنویس:

کد:
CommonDialog.Filter = "Apps (*.txt)|*.txt|All files (*.*)|*.*"
CommonDialog.DefaultExt = "txt"
CommonDialog.DialogTitle = "Select File"
CommonDialog.ShowOpen


Set objFile = objFSO.OpenTextFile(CommonDialog.FileName, ForReading)
 

پاسخ
#3
سلام مجدد Smile
ممنون از پاسخی که دادین Shy
اینکارها را انجام دادم ولی ایندفعه بعد از انتخاب فایل تکست، و زدن دکمه Open خطای Run-time error '424'  میده و میگه Object required

هدف من، خواندن فایل تکست و تبدیل اون به اکسل هست
کد:
Private Sub Command1_Click()
CommonDialog1.Filter = "Apps (*.txt)|*.txt|All files (*.*)|*.*"
CommonDialog1.DefaultExt = "txt"
CommonDialog1.DialogTitle = "Select File"
CommonDialog1.ShowOpen

MsgBox CommonDialog1.FileName

Set objFile = objFSO.OpenTextFile(CommonDialog1.FileName, ForReading)
End Sub

Private Sub Command2_Click()
Dim objUser, strExcelPath, objExcel, objSheet, _
objFSO, objFile, aline, aLines, irow, icol

Const ForReading = 1

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\1.txt", _
ForReading)
strExcelPath = "C:\testing.xls"

' Bind to Excel object.
'On Error Resume Next
Set objExcel = CreateObject("Excel.Application")
If (Err.Number <> 0) Then
On Error GoTo 0
Wscript.Echo "Excel application not found."
Wscript.Quit
End If
On Error GoTo 0

objExcel.Visible = True
objExcel.Workbooks.Add

Set objSheet = objExcel.ActiveWorkbook.Worksheets(1)
objSheet.Name = "testing"

aLines = Split(objFile.ReadAll, vbNewLine)
For irow = 1 To UBound(aLines) + 1
aline = Split(aLines(irow - 1), ",")
For icol = 1 To UBound(aline) + 1
objSheet.Cells(irow, icol).Value = aline(icol - 1)
Next ' icol
Next ' irow
End Sub
اون کلید Command2 فایل تکست را به اکسل تبدیل میکنه ولی ایرادش اینه که آدرس فایل باید مشخص باشه، حالا من میخوام با کلید Command1 فایل تکست را لود کنم و به اون تابع کلید Command2 بدهم تا فایل تکست را بخونه و تبدیلش کنه
کل فایلهای پروژ] به زبان VB6 را ضمیمه کردم، ممنون میشم نگاهی بندازین Undecided


آخرین ویرایش: 26-05-2015 ساعت 10:21، توسط ahmadelectron
پاسخ
#4
هیشکی نبود کمک کنه Undecided

پاسخ
#5
سلام
برنامه رو make exe کن بعد run as administrator بزن فکر کنم درست بشه

چطور امضا کنم؟  Huh
پاسخ
ایجاد موضوع جدید   پاسخ به موضوع  

موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
Note درست کردن cmd با vb ata81 0 354 24-03-2014 ساعت 19:11
آخرین ارسال: ata81
Note درخواست ماشین حساب ساده در VB6 farhad+98 14 1,629 11-05-2013 ساعت 07:08
آخرین ارسال: Daniel
Note درخواست برنامه ساخت پوشه تو در تو! C0der 2 645 24-07-2012 ساعت 11:22
آخرین ارسال: hamedre81

کاربرانِ درحال بازدید از این موضوع:   1 مهمان