•
•
•
•
What is DaniWeb IT Discussion Community?
You're currently browsing the Visual Basic 4 / 5 / 6 section within the Software Development category of DaniWeb, a massive community of 427,160 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 1,971 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Visual Basic 4 / 5 / 6 advertiser: Programming Forums
Views: 9445 | Replies: 8
![]() |
I am undertaking a project but am hopelessly stuck. :cry: I have trawled the net, read books and followed tutorials but I just can't move forward. I would be really grateful if someone could help.
I need to create a sequential name and address file with the following options:
open a new file
open an existing file
add name and address info to open file
close a file
exit the program.
There are defined guidelines that I have so far stuck to. What I think I need to do is change my coding so I have an embedded db template that I can use to create a new db or open an existing db.
My code is as follows-
Ty for looking.
I need to create a sequential name and address file with the following options:
open a new file
open an existing file
add name and address info to open file
close a file
exit the program.
There are defined guidelines that I have so far stuck to. What I think I need to do is change my coding so I have an embedded db template that I can use to create a new db or open an existing db.
My code is as follows-
Dim TextFileNum As Integer
Dim OpenFileName As String
Dim db As Database
Dim rs As Recordset
Private Sub Form_Load()
OpenFileName = Empty
mnuClose.Enabled = False
End Sub
Private Sub mnuNew_Click()
f = FreeFile
CMDialog1.Filter = "all files|*.*|text|*.txt"
CMDialog1.FilterIndex = 0
CMDialog1.InitDir = App.Path
CMDialog1.ShowOpen
MsgBox "You selected: " + CMDialog1.FileName
Set db = OpenDatabase(CMDialog1.FileName)
Set rs = db.OpenRecordset("Table1")
rs.AddNew
rs![Name] = txtName.Text
rs![Address1] = txtAddress1.Text
rs![Address2] = txtAddress2.Text
rs![Address3] = txtAddress3.Text
rs![Postcode] = txtPostcode.Text
TextFileNum = FreeFile
OpenFileName = CMDialog1.FileName
Open OpenFileName For Output As #f
cmdAdd.Visible = True
mnuNew.Enabled = False
mnuOpen.Enabled = False
mnuClose.Enabled = True
End Sub
Private Sub mnuOpen_Click()
f = FreeFile
'CMDialog1.CancelError = True
'On Error GoTo Errhandler &n bsp; &n bsp; 'set error for cancel button
CMDialog1.Filter = "all files|*.*|text|*.txt"
CMDialog1.FilterIndex = 0
CMDialog1.InitDir = App.Path
CMDialog1.ShowOpen
MsgBox "You selected: " + CMDialog1.FileName
Set db = OpenDatabase(CMDialog1.FileName)
Set rs = db.OpenRecordset("Table1")
rs.Edit
txtName.Text = rs![Name]
txtAddress1.Text = rs![Address1]
txtAddress2.Text = rs![Address2]
txtAddress3.Text = rs![Address3]
txtPostcode.Text = rs![Postcode]
rs.MoveFirst
TextFileNum = FreeFile
OpenFileName = CMDialog1.FileName
Open OpenFileName For Append As #f
cmdAdd.Visible = True
mnuNew.Enabled = False
mnuOpen.Enabled = False
mnuClose.Enabled = True
Exit Sub
'Errhandler:
'MsgBox "You clicked the cancel button"
'Exit Sub
End Sub
Private Sub mnuClose_Click()
'if
cmdAdd.Visible = False
'then
mnuOpen.Enabled = True
mnuNew.Enabled = True
mnuClose.Enabled = False
'Else
MsgBox "001 File not open", vbOKOnly, "Error Details"
End Sub
Private Sub mnuExit_Click()
rs.Close
Close (f)
End
End Sub
Private Sub cmdAdd_Click()
'rs.AddNew
rs![Name] = txtName.Text
rs![Address1] = txtAddress1.Text
rs![Address2] = txtAddress2.Text
rs![Address3] = txtAddress3.Text
rs![Postcode] = txtPostcode.Text
rs.Update
End Sub
•
•
Join Date: Dec 2004
Location: Lincoln Park, Michigan
Posts: 1,744
Reputation:
Rep Power: 7
Solved Threads: 108
What are you doing with the access database? It looks like to me, in your code, that you are mixing access databases with sequential files. Which do you want to use, an access database, or sequential files? You do this for access:
and then this:
What is your ultimate goal? I can help you, but I need to know exactly what you are trying to accomplish.
Set db = OpenDatabase(CMDialog1.FileName)
and then this:
OpenFileName = CMDialog1.FileName Open OpenFileName For Append As #f
What is your ultimate goal? I can help you, but I need to know exactly what you are trying to accomplish.
ok ty your help is really appreciated as this is driving me nuts and taking up so much of my spare time. This is a project I am working through for an evening class (but we are allowed to get help from any source). The wording says a sequential name and address file, but the college I thought hinted that we needed a db to hold the name, address line 1, address line 2, address line 3 and postcode. We have been given various things that we have to put in our coding (including common dialog box) - hence most of what I have included.
Being a novice I am finding it so hard to make sense of the examples I am finding in books and on line.
My idea is that when I select file new it should allow me to open a new file (that I give a file name to) which is automatically linked to my textboxes. I then think that if I select file open I should be able to open any of my previously created files.
I have run into horrendous problems here and have had no luck even though I have tackled it in 3 or 4 different ways. Any help would be great.
Being a novice I am finding it so hard to make sense of the examples I am finding in books and on line.
My idea is that when I select file new it should allow me to open a new file (that I give a file name to) which is automatically linked to my textboxes. I then think that if I select file open I should be able to open any of my previously created files.
I have run into horrendous problems here and have had no luck even though I have tackled it in 3 or 4 different ways. Any help would be great.
•
•
Join Date: Dec 2004
Location: Lincoln Park, Michigan
Posts: 1,744
Reputation:
Rep Power: 7
Solved Threads: 108
I'd like to read the requirements. It sounds to me like you could use 1 file for each person that is a record. So, there is a file for rob smith, who lives at 2200 se ave florida.... and another file for robin smithers, who lives at 0022 nw blvd, michigan.... let me see the specifics, and I'll help you out.
Ok so as I said earlier I need to create a sequential name and address file with the following options:
open a new file
open an existing file
add name and address info to open file
close a file
exit the program.
My form has a drop down menu with file new, open, close and exit options.
It has 5 textboxes - Name, Address1, Address2, Address3, Postcode and an add command button. It also has a common dialog control.
So it then goes on to say
code form_load
set the string variable OpenFileName to empty
code mnuNew_click
set file filters for all files or txt files in the common dialog
set FilterIndex to default to all files
display open file dialog
assign FreeFile number to the variable TextFileNum
open selected file as output
set OpenFileName variable to the common dialog FileName
code mnuOpen_click
set file filters for all files or txt files in the common dialog
set FilterIndex to default to all files
display open file dialog
assign FreeFile number to the variable TextFileNum
open selected file as append
set OpenFileName variable to the common dialog FileName
code mnuClose_click
if a file is open
close file
set string variable OpenFileName to empty
code mnuExit_click
if a file is open close it
end the program
code mnuAdd_click
write the data in the textboxes to the file
clear the data from the textboxes
There are some basic things I have left out such as message boxes and enabled properties etc - these are in the code already.
Hope this makes sense.
Thanks
open a new file
open an existing file
add name and address info to open file
close a file
exit the program.
My form has a drop down menu with file new, open, close and exit options.
It has 5 textboxes - Name, Address1, Address2, Address3, Postcode and an add command button. It also has a common dialog control.
So it then goes on to say
code form_load
set the string variable OpenFileName to empty
code mnuNew_click
set file filters for all files or txt files in the common dialog
set FilterIndex to default to all files
display open file dialog
assign FreeFile number to the variable TextFileNum
open selected file as output
set OpenFileName variable to the common dialog FileName
code mnuOpen_click
set file filters for all files or txt files in the common dialog
set FilterIndex to default to all files
display open file dialog
assign FreeFile number to the variable TextFileNum
open selected file as append
set OpenFileName variable to the common dialog FileName
code mnuClose_click
if a file is open
close file
set string variable OpenFileName to empty
code mnuExit_click
if a file is open close it
end the program
code mnuAdd_click
write the data in the textboxes to the file
clear the data from the textboxes
There are some basic things I have left out such as message boxes and enabled properties etc - these are in the code already.
Hope this makes sense.
Thanks
•
•
Join Date: Dec 2004
Location: Lincoln Park, Michigan
Posts: 1,744
Reputation:
Rep Power: 7
Solved Threads: 108
Thank you so much for your help so far. Just one question (for now anyway!) is there a way that when i open a file I have already created it can show the data stored in the correct textboxes. I have tried playing around with the code but I can't seem to hit upon the correct terminology to make it work.
Ty
Ty
Help me please somebody - I am in danger of taking a screwdriver to my laptop!!
This code kind of works in the mnuOpen
Dim TempStr As String ' Temporary Variable
Open OpenFileName For Input As #TextFileNum ' .. open the file
Do While Not EOF(1) ' While still records in file ..
Line Input #1, TempStr ' Read a line into the variable
txtName.Text = txtName.Text & TempStr & vbCrLf ' Display it in Text1
Loop
Close #1 ' All done: close the file
However 2 problems - my specification says open file as append and this only works if I open file for input. Also it lumps all of the inputted data together and displays it all in the one text box. Adding all of the text boxes just means all of the data is shown in all of the text boxes.
Dim TempStr As String ' Temporary Variable
Open OpenFileName For Input As #TextFileNum ' .. open the file
Do While Not EOF(1) ' While still records in file ..
Line Input #1, TempStr ' Read a line into the variable
txtName.Text = txtName.Text & TempStr & vbCrLf ' Display it in Text1
txtAddress1.Text = txtAddress1.Text & TempStr & vbCrLf
txtAddress2.Text = txtAddress2.Text & TempStr & vbCrLf
txtAddress3.Text = txtAddress3.Text & TempStr & vbCrLf
txtPostCode.Text = txtPostCode.Text & TempStr & vbCrLf
Loop
Close #1 ' All done: close the file
Thanks
This code kind of works in the mnuOpen
Dim TempStr As String ' Temporary Variable
Open OpenFileName For Input As #TextFileNum ' .. open the file
Do While Not EOF(1) ' While still records in file ..
Line Input #1, TempStr ' Read a line into the variable
txtName.Text = txtName.Text & TempStr & vbCrLf ' Display it in Text1
Loop
Close #1 ' All done: close the file
However 2 problems - my specification says open file as append and this only works if I open file for input. Also it lumps all of the inputted data together and displays it all in the one text box. Adding all of the text boxes just means all of the data is shown in all of the text boxes.
Dim TempStr As String ' Temporary Variable
Open OpenFileName For Input As #TextFileNum ' .. open the file
Do While Not EOF(1) ' While still records in file ..
Line Input #1, TempStr ' Read a line into the variable
txtName.Text = txtName.Text & TempStr & vbCrLf ' Display it in Text1
txtAddress1.Text = txtAddress1.Text & TempStr & vbCrLf
txtAddress2.Text = txtAddress2.Text & TempStr & vbCrLf
txtAddress3.Text = txtAddress3.Text & TempStr & vbCrLf
txtPostCode.Text = txtPostCode.Text & TempStr & vbCrLf
Loop
Close #1 ' All done: close the file
Thanks
![]() |
•
•
•
•
•
•
•
•
DaniWeb Visual Basic 4 / 5 / 6 Marketplace
•
•
•
•
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Similar Threads
- FileOpen Dialog without using Common Dialog Control (Visual Basic 4 / 5 / 6)
Other Threads in the Visual Basic 4 / 5 / 6 Forum
- Previous Thread: playing mp3 files on the click of a button
- Next Thread: LDAP Connection



Linear Mode