خواندن فایل تکست و تبدیل آن به فایل اکسل توسط CommandButton

Visual Basic 6

توسط ahmadelectron در 3 سال پیش
0 2k 4 3 سال پیش
ahmadelectrondanieltheknight
0

سلام دوستان دار م یه برنامه مینویسم که :

  1. ابتدا فایل تکست را توسط CommandButton بصورت Browse دریافت کنه
  2. اون فایل تکست دریافتی را به یک فایل اکسل تبدیل کنه حالا من، تونستم قسمت شماره 2 را بصورت کامل انجام بدم منتهی توی این کدی که نوشتم، آدرس فایل تکست ثابته که من میخوام هر فایل تکست دلخواهی را Browse کنم و تبدیل به یه فایل اکسل بشه. اینم از کدهای نوشته شده: http://s3.picofile.com/file/8190344642/New_Text_Document.txt.html

این کلید همون قسمت 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
3

سلام  اول برو به** **[color=#cc3333]Project > Components[/color] و [color=#cc3333]Microsoft Common Dialog Control 6.0[/color] رو فعال کن

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

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


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

سلام مجدد :) ممنون از پاسخی که دادین :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 را ضمیمه کردم، ممنون میشم نگاهی بندازین :-/

http://s3.picofile.com/file/8190381342/TXT_2_XLS.zip.html

آخرین ویرایش: 26-05-2015 ساعت 10:21، توسط ahmadelectron
0

هیشکی نبود کمک کنه :-/

1

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

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.

لطفا ابتدا لاگین کنید