Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.misc
Secret Squirrel
 
Posts: n/a
Default Data from Excel to Access Table

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub
  #2   Report Post  
Posted to microsoft.public.excel.misc
exceluserforeman
 
Posts: n/a
Default Data from Excel to Access Table

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #3   Report Post  
Posted to microsoft.public.excel.misc
Secret Squirrel
 
Posts: n/a
Default Data from Excel to Access Table

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #4   Report Post  
Posted to microsoft.public.excel.misc
exceluserforeman
 
Posts: n/a
Default Data from Excel to Access Table

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #5   Report Post  
Posted to microsoft.public.excel.misc
Secret Squirrel
 
Posts: n/a
Default Data from Excel to Access Table

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub



  #6   Report Post  
Posted to microsoft.public.excel.misc
exceluserforeman
 
Posts: n/a
Default Data from Excel to Access Table

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #7   Report Post  
Posted to microsoft.public.excel.misc
Secret Squirrel
 
Posts: n/a
Default Data from Excel to Access Table

I tried the (A10:010") theory and it didn't work.

Do you know how to write it using the "loop"?

"exceluserforeman" wrote:

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #8   Report Post  
Posted to microsoft.public.excel.misc
exceluserforeman
 
Posts: n/a
Default Data from Excel to Access Table

hello,


Sub Grunt()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next
'Your access code here...

end sub

I've used a space instead of an apostrophe.

You may have to "wiggle" the code it a bit to get it right.
SQLStr = "INSERT INTO [Table1] " _
& "Values (" & varx & ")"

Whether the word "Values" is required, I do not know.

Maybe you could record a macro where the range is already preselected, to
see if it picks up the range.



"Secret Squirrel" wrote:

I tried the (A10:010") theory and it didn't work.

Do you know how to write it using the "loop"?

"exceluserforeman" wrote:

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #9   Report Post  
Posted to microsoft.public.excel.misc
Secret Squirrel
 
Posts: n/a
Default Data from Excel to Access Table

Hello,

So what code am I eliminating from my code? I'm a little confused as to
which code I need to remove. Also, not sure what you mean about wiggling my
code. What do I need to do to wiggle it?

Thanks!

"exceluserforeman" wrote:

hello,


Sub Grunt()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next
'Your access code here...

end sub

I've used a space instead of an apostrophe.

You may have to "wiggle" the code it a bit to get it right.
SQLStr = "INSERT INTO [Table1] " _
& "Values (" & varx & ")"

Whether the word "Values" is required, I do not know.

Maybe you could record a macro where the range is already preselected, to
see if it picks up the range.



"Secret Squirrel" wrote:

I tried the (A10:010") theory and it didn't work.

Do you know how to write it using the "loop"?

"exceluserforeman" wrote:

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #10   Report Post  
Posted to microsoft.public.excel.misc
exceluserforeman
 
Posts: n/a
Default Data from Excel to Access Table


before your code starts but after the Sub xxx()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next


where your code says

SQLStr = "INSERT INTO [Table1] " _

instead of al that range data put


& "Values (" & varx & ")"


I meant wiggle by assuming you wrote the code in the first place and knew
that nothing works the first time round and you have to "wiggle" the code (ie
make minor changes) a bit.

And I am still not sure whetther it will work.



"Secret Squirrel" wrote:

Hello,

So what code am I eliminating from my code? I'm a little confused as to
which code I need to remove. Also, not sure what you mean about wiggling my
code. What do I need to do to wiggle it?

Thanks!

"exceluserforeman" wrote:

hello,


Sub Grunt()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next
'Your access code here...

end sub

I've used a space instead of an apostrophe.

You may have to "wiggle" the code it a bit to get it right.
SQLStr = "INSERT INTO [Table1] " _
& "Values (" & varx & ")"

Whether the word "Values" is required, I do not know.

Maybe you could record a macro where the range is already preselected, to
see if it picks up the range.



"Secret Squirrel" wrote:

I tried the (A10:010") theory and it didn't work.

Do you know how to write it using the "loop"?

"exceluserforeman" wrote:

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub



  #11   Report Post  
Posted to microsoft.public.excel.misc
Secret Squirrel
 
Posts: n/a
Default Data from Excel to Access Table

I will try that and see what happens.

The code does work but it was only set up to upload just the one row from
A10:O10. So since it worked should I still leave my code for the SQLStr or
use yours?

"exceluserforeman" wrote:


before your code starts but after the Sub xxx()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next


where your code says

SQLStr = "INSERT INTO [Table1] " _

instead of al that range data put


& "Values (" & varx & ")"


I meant wiggle by assuming you wrote the code in the first place and knew
that nothing works the first time round and you have to "wiggle" the code (ie
make minor changes) a bit.

And I am still not sure whetther it will work.



"Secret Squirrel" wrote:

Hello,

So what code am I eliminating from my code? I'm a little confused as to
which code I need to remove. Also, not sure what you mean about wiggling my
code. What do I need to do to wiggle it?

Thanks!

"exceluserforeman" wrote:

hello,


Sub Grunt()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next
'Your access code here...

end sub

I've used a space instead of an apostrophe.

You may have to "wiggle" the code it a bit to get it right.
SQLStr = "INSERT INTO [Table1] " _
& "Values (" & varx & ")"

Whether the word "Values" is required, I do not know.

Maybe you could record a macro where the range is already preselected, to
see if it picks up the range.



"Secret Squirrel" wrote:

I tried the (A10:010") theory and it didn't work.

Do you know how to write it using the "loop"?

"exceluserforeman" wrote:

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

  #12   Report Post  
Posted to microsoft.public.excel.misc
exceluserforeman
 
Posts: n/a
Default Data from Excel to Access Table

I think you should leave it the old way.

By creating for .. loops etc will make large volume data quicker to move:

but it would be interesting if my code worked at all ...


- -Mark

"Secret Squirrel" wrote:

I will try that and see what happens.

The code does work but it was only set up to upload just the one row from
A10:O10. So since it worked should I still leave my code for the SQLStr or
use yours?

"exceluserforeman" wrote:


before your code starts but after the Sub xxx()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next


where your code says

SQLStr = "INSERT INTO [Table1] " _

instead of al that range data put


& "Values (" & varx & ")"


I meant wiggle by assuming you wrote the code in the first place and knew
that nothing works the first time round and you have to "wiggle" the code (ie
make minor changes) a bit.

And I am still not sure whetther it will work.



"Secret Squirrel" wrote:

Hello,

So what code am I eliminating from my code? I'm a little confused as to
which code I need to remove. Also, not sure what you mean about wiggling my
code. What do I need to do to wiggle it?

Thanks!

"exceluserforeman" wrote:

hello,


Sub Grunt()
dim Cell
dim varX
range("A10:P10").select
for each cell in selection
if cell.text="" then
cell.text=" ,"
else
varx=varx & cell.text & ","
end if
next
'Your access code here...

end sub

I've used a space instead of an apostrophe.

You may have to "wiggle" the code it a bit to get it right.
SQLStr = "INSERT INTO [Table1] " _
& "Values (" & varx & ")"

Whether the word "Values" is required, I do not know.

Maybe you could record a macro where the range is already preselected, to
see if it picks up the range.



"Secret Squirrel" wrote:

I tried the (A10:010") theory and it didn't work.

Do you know how to write it using the "loop"?

"exceluserforeman" wrote:

I ma out of my depth here but ...
where it says
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
etc...



maybe just
& "Values ('" & Range("A1:O10").Value,

which covers all the rows instead of layering each cell intot he table one
by one.

Otherwise a for loop for each cell range written to a string

Maybe ask in ACCESS section
- -Mark

"Secret Squirrel" wrote:

There are many reports and queries already set up in Access to analyze the
data. And plus the users like using Access rather than Excel.

How can I fix my code to be able to import more than just one row of data?
Right now I have it set up so it will import data from cell A10:O10. What
about multiple rows? How would I do this?

"exceluserforeman" wrote:

Then maybe the stuff in ACCESS can be sent to Excel and the reports can be
generated from there??

HOWEVER For each cell that is blank, put an apostrophe in it. ' Then maybe
it will accept the "blank" cell or maybe a Quote mark "


"Secret Squirrel" wrote:

Because this data is used by the users in excel and then it needs to be
uploaded into Access to be used with additional data already in access to run
reports, etc.

"exceluserforeman" wrote:

Why ACCESS? Why do you not just use EXCEL?

"Secret Squirrel" wrote:

Hello,
I have this code setup in Excel but I want to be able to upload multiple
rows at one time. Is there a way to incorporate this into my code? Also, is
there a way to upload cells that are blank as well? Right now it won't allow
me to upload cells that are blank. Can this be done?

Sub UploadData()

Dim MyCn As ADODB.Connection
Dim SQLStr As String

Set MyCn = New ADODB.Connection

MyCn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
"DBQ=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC
QA mdb\BC Quality Action
Database.mdb;SystemDB=\\Bcar1\bcar-net\Quality-ISO\Quality-Control\BC-Quality-Control\BC QA mdb\Sys\sys.mdw;" & _
"Uid=Admin;" & _
"Pwd=password;"
' Replace actual Access file path here
' Note: If database has userID and password, need to specify them here also
' by appending "; UID=MyUserID; PWD=MyPassword"
' - if trouble accessing the file do a net search for help on Connection
Strings

SQLStr = "INSERT INTO [Table1] " _
& "Values ('" & Range("A10").Value & "', '" & Range("B10").Value & "',
'" _
& Range("C10").Value & "', '" & Range("D10").Value & "', '" &
Range("E10").Value & "', '" _
& Range("F10").Value & "', '" & Range("G10").Value & "', '" &
Range("H10").Value & "', '" _
& Range("I10").Value & "', '" & Range("J10").Value & "', '" &
Range("K10").Value & "', '" _
& Range("L10").Value & "', '" & Range("M10").Value & "', '" &
Range("N10").Value & "', '" _
& Range("O10").Value & "', '" & Range("P10").Value & "')"
' NOTE: The above assumes all fields are TEXT data type, that is why the "'"s;
' might have trouble with other data types unless you match the format
expected
' by the database

MyCn.Execute SQLStr

MyCn.Close
Set MyCn = Nothing

End Sub

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Can I copy a table from Word into one cell in Excel without losing data? (Office 97) [email protected] Excel Discussion (Misc queries) 2 November 29th 05 07:22 PM
Linking table in Excel to word travis Links and Linking in Excel 1 November 19th 05 02:30 PM
Fetching External Data from Excel Sri Excel Discussion (Misc queries) 2 January 3rd 05 11:46 AM
Data population between excel and access - Errors on missed fields Chris Excel Discussion (Misc queries) 0 December 13th 04 11:55 AM
Data Table - Does it work with DDE links and stock tickers? Post Tenebras Lux Excel Discussion (Misc queries) 0 December 1st 04 05:15 PM


All times are GMT +1. The time now is 03:39 PM.

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

About Us

"It's about Microsoft Excel"