A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Access » Setting Up & Running Reports
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

Creating a custom text export file (inc. header & footer) from a q



 
 
Thread Tools Display Modes
  #11  
Old May 12th, 2007, 10:26 AM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The .kml
file only contains the first address in the query, and I think it's because
of my badly worded sentence 'I have an address query which ouputs a single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I really
meant was it is a single field (among other fields in the query), but that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I was
worried
that the query it was calling was two seperate words, so I changed it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and footer text
to be
inserted. Does anyone know how I can pre-insert the Header and Footer
into a
standard text file, and then save it with a '.kml' extension, for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.




  #12  
Old May 12th, 2007, 12:15 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
Douglas J. Steele
external usenet poster
 
Posts: 9,313
Default Creating a custom text export file (inc. header & footer) from

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and footer
text
to be
inserted. Does anyone know how I can pre-insert the Header and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.






  #13  
Old May 12th, 2007, 12:29 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

Douglas,

that worked, i now have a full list of records from the field, though i have
a slight problem at the Google Earth end which I think is just a syntax
problem with the header text.

Meanwhile, I am very grateful for your help.

much appreciated.

"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and footer
text
to be
inserted. Does anyone know how I can pre-insert the Header and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.







  #14  
Old May 12th, 2007, 12:59 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and footer
text
to be
inserted. Does anyone know how I can pre-insert the Header and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.







  #15  
Old May 12th, 2007, 01:19 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
Douglas J. Steele
external usenet poster
 
Posts: 9,313
Default Creating a custom text export file (inc. header & footer) from

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

Is the expected string supposed to have two double quotes on either side of
UTF-8? If so, you need

Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

(The rule is everytime you want a quote to appear inside a quoted string,
you need to double the quotes.)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some
kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field
to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I
changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and
footer
text
to be
inserted. Does anyone know how I can pre-insert the Header
and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.









  #16  
Old May 12th, 2007, 01:49 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

Douglas,

When I use your line:
Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

I get: (2 pairs of double quotes)

?xml version="1.0" encoding=""UTF-8""?

If I remove 1x" from either side of """"UTF-8"""" the VBA puts spaces
between the characters, like this:

UTF - 8

For the record, this is the line google earth needs

?xml version="1.0" encoding="UTF-8"?


"Douglas J. Steele" wrote:

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

Is the expected string supposed to have two double quotes on either side of
UTF-8? If so, you need

Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

(The rule is everytime you want a quote to appear inside a quoted string,
you need to double the quotes.)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some
kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field
to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I
changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and
footer
text
to be
inserted. Does anyone know how I can pre-insert the Header
and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.










  #17  
Old May 12th, 2007, 02:01 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

Phew!

I managed to do it!!!

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

gives me the correct: ?xml version="1.0" encoding="UTF-8"?

Thanks so much Douglas (and John...)

happy days!

"efandango" wrote:

Douglas,

When I use your line:
Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

I get: (2 pairs of double quotes)

?xml version="1.0" encoding=""UTF-8""?

If I remove 1x" from either side of """"UTF-8"""" the VBA puts spaces
between the characters, like this:

UTF - 8

For the record, this is the line google earth needs

?xml version="1.0" encoding="UTF-8"?


"Douglas J. Steele" wrote:

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

Is the expected string supposed to have two double quotes on either side of
UTF-8? If so, you need

Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

(The rule is everytime you want a quote to appear inside a quoted string,
you need to double the quotes.)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some
kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field
to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I
changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and
footer
text
to be
inserted. Does anyone know how I can pre-insert the Header
and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.










  #18  
Old May 12th, 2007, 02:38 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

Douglas, John.

Now that I have the code working, how can I adapt it to take a criteria from
the underlying query.

Each set of addresses (16 addresses per set) within the query is based on a
Main Record field called [Run_No]. But when I try to use this criteria in the
query and then run your code, I get the following error message:

Run-time error '3061';
Too few parameters. Expected 1.

and the VBA throws a highlighted yellow error:

Set rsR = CurrentDb.OpenRecordset("Generate_KML", dbOpenSnapshot)



"Douglas J. Steele" wrote:

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

Is the expected string supposed to have two double quotes on either side of
UTF-8? If so, you need

Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

(The rule is everytime you want a quote to appear inside a quoted string,
you need to double the quotes.)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some
kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...). The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What I
really
meant was it is a single field (among other fields in the query), but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that field
to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found' on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference, so I
was
worried
that the query it was calling was two seperate words, so I
changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and
footer
text
to be
inserted. Does anyone know how I can pre-insert the Header
and
Footer
into a
standard text file, and then save it with a '.kml' extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.










  #19  
Old May 12th, 2007, 03:28 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
Douglas J. Steele
external usenet poster
 
Posts: 9,313
Default Creating a custom text export file (inc. header & footer) from

http://www.mvps.org/access/queries/qry0013.htm

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas, John.

Now that I have the code working, how can I adapt it to take a criteria
from
the underlying query.

Each set of addresses (16 addresses per set) within the query is based on
a
Main Record field called [Run_No]. But when I try to use this criteria in
the
query and then run your code, I get the following error message:

Run-time error '3061';
Too few parameters. Expected 1.

and the VBA throws a highlighted yellow error:

Set rsR = CurrentDb.OpenRecordset("Generate_KML", dbOpenSnapshot)



"Douglas J. Steele" wrote:

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

Is the expected string supposed to have two double quotes on either side
of
UTF-8? If so, you need

Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

(The rule is everytime you want a quote to appear inside a quoted string,
you need to double the quotes.)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some
kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...).
The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What
I
really
meant was it is a single field (among other fields in the query),
but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that
field
to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct
though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in
message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found'
on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference,
so I
was
worried
that the query it was calling was two seperate words, so I
changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to
text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and
footer
text
to be
inserted. Does anyone know how I can pre-insert the Header
and
Footer
into a
standard text file, and then save it with a '.kml'
extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

Output Field: [kml Address]

This is the Footer:

/Folder
/Document
/kml

--
John Nurick [Microsoft Access MVP]

Please respond in the newsgroup and not by email.












  #20  
Old May 12th, 2007, 04:21 PM posted to microsoft.public.access.externaldata,microsoft.public.access.reports,microsoft.public.access
efandango
external usenet poster
 
Posts: 489
Default Creating a custom text export file (inc. header & footer) from

Douglas,

thanks for that article, I understand what it is implying, but don't really
get how to implement the suggestions. It seems to me that it relates more to
forms controls than underlying query criteria. I tried this: (you'll probably
smile at my naivety...), but i can't figure out what or even how to
contextualise the code to reference my criteria field:

Set rsR = CurrentDb.OpenRecordset("Generate_KML", dbOpenSnapshot)
qdf![Generate_KML.Run_No] = [Run No]

but it didn't work.

Unlike that articles suggestion, I am not accessing a form's control, but a
criteria control with the criteria 'Run No' based on a field called [Run_No]






"Douglas J. Steele" wrote:

http://www.mvps.org/access/queries/qry0013.htm

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas, John.

Now that I have the code working, how can I adapt it to take a criteria
from
the underlying query.

Each set of addresses (16 addresses per set) within the query is based on
a
Main Record field called [Run_No]. But when I try to use this criteria in
the
query and then run your code, I get the following error message:

Run-time error '3061';
Too few parameters. Expected 1.

and the VBA throws a highlighted yellow error:

Set rsR = CurrentDb.OpenRecordset("Generate_KML", dbOpenSnapshot)



"Douglas J. Steele" wrote:

Print #lngFN, "?xml version=""1.0"" encoding=""UTF-8""?"

Is the expected string supposed to have two double quotes on either side
of
UTF-8? If so, you need

Print #lngFN, "?xml version=""1.0"" encoding=""""UTF-8""""?"

(The rule is everytime you want a quote to appear inside a quoted string,
you need to double the quotes.)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
Douglas,

Can you help advise on this VBA problem please?

When I paste or type this line:

Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"

I get

Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"

the 1.0 becomes 1#

I can't seem to get the VBA window to accept John's code, weird or some
kind
of switch that is turned off?



"Douglas J. Steele" wrote:

Replace

Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

with

Set rsR = CurrentDb.Open("Generate_KML")
Do Until rsR.EOF = True
Print #lngFN, rsR.Fields("KML_Address")
rsR.MoveNext
Loop
Close rsR

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in message
...
help?...

"efandango" wrote:

Douglas/John,

that did the trick...

but I have a secondary problem (that i think is of my making...).
The
.kml
file only contains the first address in the query, and I think it's
because
of my badly worded sentence 'I have an address query which ouputs a
single
field to text strings for
Google Earth .kml file format parameters.' in my opening post. What
I
really
meant was it is a single field (among other fields in the query),
but
that it
contains multiple records/data.

eg:

Main St, London, W1
South St, London, W2
East St, London, SE1

Is it possible to get the routine to print All the data for that
field
to
the kml file?





"Douglas J. Steele" wrote:

That's supposed to be rsR.Close (the Close #lngFN is correct
though)

--
Doug Steele, Microsoft Access MVP
http://I.Am/DougSteele
(no private e-mails, please)


"efandango" wrote in
message
...
John,

I now get this error in the line: Close rsR:
(highlighting the word 'Close')

Compile error:
Type mismatch:



"John Nurick" wrote:

My fault - though I warned you it was air code. Should be
CurrentDB.OpenRecordset("Generate_KML", dbOpenSnapshot)
not
CurrentDB.Open("Generate_KML")




On Thu, 10 May 2007 16:41:00 -0700, efandango
wrote:

John,

Just ignore the previous two posts from me.

This is how far i have got in adapting your code

Private Sub Test_Click()
Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "W:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="; 1#; " encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
Print #lngFN, "Document"
Print #lngFN, "nameAddress List/name"
Print #lngFN, "Folder"
Print #lngFN, "nameLocations/name"
Print #lngFN, "open1/open"
'...

'Output address
Set rsR = CurrentDb.Open("Generate_KML")
Print #lngFN, rsR.Fields("KML_Address")
Close rsR

'Output footer
Print #lngFN, "/Folder"
Print #lngFN, "/Document"
Print #lngFN, "/kml"
'...

Close #lngFN

End Sub


But i get an error message: 'Method or Data Member not found'
on
the
word
'Open' in the following line:

Set rsR = CurrentDb.Open("Generate_KML")

It suggests that something is mispelled or wrong reference,
so I
was
worried
that the query it was calling was two seperate words, so I
changed
it to
one
whole_word. But it still reports the same error message.

Can you help me with this?

"John Nurick" wrote:

There are many ways of skinning this cat. I'd probably do
something
like
this (air code):

Dim rsR As DAO.Recordset
Dim strLine As String
Dim lngFN As Long

'Create empty text file
lngFN = FreeFile()
Open "D:\Folder\Addresses.kml" For Output As #lngFN

'Output header
'NB: need to double quotes in literal strings
Print #lngFN, "?xml version="1.0" encoding=""UTF-8""?"
Print #lngFN, "kml
xmlns=""http://earth.google.com/kml/2.0"""
'...

'Output address
Set rsR = CurrentDB.Open("My Query")
Print #lngFN, rsR.Fields("kml Address")
Close rsR

'Output footer
Print #lngFN blah blah

Close #lngFN

On Thu, 10 May 2007 10:35:01 -0700, efandango
wrote:

I have an address query which ouputs a single field to
text
strings
for
Google Earth .kml file format parameters.

The problem is that the .kml file requires a header and
footer
text
to be
inserted. Does anyone know how I can pre-insert the Header
and
Footer
into a
standard text file, and then save it with a '.kml'
extension,
for
example
'Addresses.kml'

This is the Header:

?xml version="1.0" encoding="UTF-8"?
kml xmlns="http://earth.google.com/kml/2.0"
Document
nameAddress List/name
Folder
nameLocations/name
open1/open

 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump


All times are GMT +1. The time now is 11:48 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.