Expiring Today—Celebrate National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

updating an access database table from a textfile

Posted on 1998-07-15
2
Medium Priority
?
148 Views
Last Modified: 2010-05-03
i'm trying to write a function that will open a text file for reading, then read the file line by line and put it into an existing table- graph. i am trying first just to read the lines and past it into one of the table's fields without deviding it to fields.
i wrote:
Private Sub load_Click()
Dim dbss As Database
Set dbss = OpenDatabase("db3") 'db3 is my dbase name
Dim textline As String
Open "a:movefile.txt" For Input As #1
Do While Not EOF(1)
    Line Input #1, textline
    dbss.TableDefs("graph").Fields("num") = textline
    Loop
Close #1
End Sub
the thing is it doesn't work.
the textline format in the file is:
:spo2= (3 digits number) pr= (3 digits number) no probe
if you can please tell me also how to read the file so i can imidiatly past the 3 digits numbers in to diffrent fields in table graph i would give you a very high score.
thank you my saviour.
0
Comment
Question by:ilanm
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 1

Accepted Solution

by:
gissing earned 400 total points
ID: 1465773
I think I see what you are trying to do. The code looks roughly like this:


Private Sub foo()

Dim db As Database
Dim rs As Recordset
Dim h As Long
Dim s As String
Dim n1 As String
Dim n2 As String
Dim i As Integer

    Set db = OpenDatabase("db3")
   
    Set rs = db.OpenRecordset("graph", dbOpenTable)
   
    h = FreeFile
    Open "a:movefile.txt" For Input As #h
   
    Do While Not EOF(h)
   
        Line Input #h, s
       
        i = InStr(s, "spo2=")
        n1 = Mid$(s, i + 5, 3)
       
        i = InStr(s, "pr=")
        n2 = Mid$(s, i + 3, 3)
       
        rs.AddNew
        rs.Fields("num1").Value = n1
        rs.Fields("num2").Value = n2
        rs.Update
   
    Loop
   
    Close #h
   
    rs.Close
    Set rs = Nothing
   
    db.Close
    Set db = Nothing

End Sub


Obviously you will need to change the field names to suit. Also, some error handling and a transaction wouldn't go amiss.
0
 

Author Comment

by:ilanm
ID: 1465774
i don't know if it works but this is the first time someone actualy submits a code to his answer.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The debugging module of the VB 6 IDE can be accessed by way of the Debug menu item. That menu item can normally be found in the IDE's main menu line as shown in this picture.   There is also a companion Debug Toolbar that looks like the followin…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Suggested Courses

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question