Avatar billede larsgrau Forsker
26. august 2016 - 13:05 Der er 11 kommentarer og
1 løsning

Print i VBA

Hej

Jeg prøve at få access til at skrive følgende til en fil

Print #1, "<wpt lat="; ""; 1; ""; " lon="; "1"; ">"
det kommer der følgende ud af
<wpt lat= 1 lon=1>

Men den skal se sådan her ud:
<wpt lat="1" lon="1">

nogen ide til hvor jeg får den til det.

1 skal udskiftet med data fra en tabel.

Venlig Hilsen
Lars
Avatar billede larsgrau Forsker
26. august 2016 - 13:55 #1
Jeg vil gerne have den sætte " på hver side af 1, det kan jeg bare ikke få den til.
Avatar billede terry Ekspert
26. august 2016 - 14:10 #2
Print #1, "<wpt lat="; """1"""; " lon="; """1"""; ">"
Avatar billede larsgrau Forsker
13. september 2016 - 10:52 #3
Det virker fint, så længe det er 1 og 2 der er sat ind, men når jeg prøver at hente data fra en tabel virker det ikke helt, nogen ide ?

Set rs = CurrentDb.OpenRecordset("SELECT * FROM EXPORTSITE", dbOpenDynaset)

If (rs.RecordCount <> 0) Then
  rs.MoveFirst

  Open strSaveFileName For Output As #1
 
    Print #1, "<?xml version="; "1.0"; " encoding="; "UTF-8"; " standalone="; "no"; " ?>"
   
  Do While rs.EOF = False
 
    TempExportCount = TempExportCount + 1


      Print #1, "<wpt lat="; """& rs.Fields("; [SITE_POSITION_LATITUDE]; ").Value &""", "lon="; """& rs.Fields("; [SITE_POSITION_LONGITUDE]; ").Value &"""; ">"
      Print #1, "</wpt>"
   
    rs.MoveNext
  Loop
    'Print #1, "</statics>"
End If
Avatar billede terry Ekspert
13. september 2016 - 12:21 #4
If you declare two variables and then use this in the code this should work
Dim fldA As String
Dim fldB As String

fldA = rs.Fields("; [SITE_POSITION_LATITUDE]
fldB = [SITE_POSITION_LONGITUDE]

Print #1, "<wpt lat="; """"; fldA; """"; " lon="; """"; fldB; """"; ">"
Avatar billede terry Ekspert
13. september 2016 - 12:22 #5
Ooops
fldA = rs.[SITE_POSITION_LATITUDE]
fldB = rs.[SITE_POSITION_LONGITUDE]
Avatar billede larsgrau Forsker
13. september 2016 - 13:21 #6
Det virker ikke helt, jeg har sat det ind sådan her
Dim rs As DAO.Recordset
Dim latpos As String
Dim longpos As String

latpos = rs.[SITE_POSITION_LATITUDE]
longpos = rs.[SITE_POSITION_LONGITUDE]

Set rs = CurrentDb.OpenRecordset("SELECT * FROM EXPORTSITE", dbOpenDynaset)




If (rs.RecordCount <> 0) Then
  rs.MoveFirst

  Open strSaveFileName For Output As #1
 
    Print #1, "<?xml version="; "1.0"; " encoding="; "UTF-8"; " standalone="; "no"; " ?>"
   
  Do While rs.EOF = False
 
    TempExportCount = TempExportCount + 1


      Print #1, "<wpt lat="; """;latpos;""", "lon="; """;longpos;"""; ">"
      Print #1, "</wpt>"
   
    rs.MoveNext
  Loop
    'Print #1, "</statics>"
End If
Avatar billede larsgrau Forsker
13. september 2016 - 13:22 #7
har også prøvet version

Dim rs As DAO.Recordset
Dim latpos As String
Dim longpos As String



Set rs = CurrentDb.OpenRecordset("SELECT * FROM EXPORTSITE", dbOpenDynaset)

latpos = rs.[SITE_POSITION_LATITUDE]
longpos = rs.[SITE_POSITION_LONGITUDE]


If (rs.RecordCount <> 0) Then
  rs.MoveFirst

  Open strSaveFileName For Output As #1
 
    Print #1, "<?xml version="; "1.0"; " encoding="; "UTF-8"; " standalone="; "no"; " ?>"
   
  Do While rs.EOF = False
 
    TempExportCount = TempExportCount + 1


      Print #1, "<wpt lat="; """;latpos;""", "lon="; """;longpos;"""; ">"
      Print #1, "</wpt>"
   
    rs.MoveNext
  Loop
    'Print #1, "</statics>"
End If
Avatar billede terry Ekspert
13. september 2016 - 13:59 #8
you dont say what problem you get.

You need to make sure that latpos  and longpos  contain correct data.

Actually I think I can see a problem ..You need 4 > """" you only have 3

Print #1, "<wpt lat="; """";latpos;"""", "lon="; """";longpos;""""; ">"
Avatar billede terry Ekspert
13. september 2016 - 14:02 #9
I'm only looking at the single print line of code how you get the data into the variables is up to you...
Avatar billede larsgrau Forsker
13. september 2016 - 14:14 #10
Hej

Den kommer op med denne i VBA

Compile error: Method or data member not found

og den marker rs.[SITE_POSITION_LATITUDE]  I VBA
Avatar billede terry Ekspert
13. september 2016 - 14:23 #11
As I said,
"I'm only looking at the single print line of code how you get the data into the variables is up to you... "

A while since I used recordsets so you probably need to use rs.fields ....
Avatar billede terry Ekspert
13. januar 2017 - 12:44 #12
thanks
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester