Solved

Referring to Cells in Excel

Posted on 2008-10-06
10
161 Views
Last Modified: 2010-04-30
Hello experts,
How can I create the following strings in VB ?

c11
c12
c13
c14
c15
...

?
I can not do a Do While loop using "C" + counter because one is a string and the other is an integer.
Sorry for posting a silly question. I had the same problem in Access and it worked to do a Me("C" & i) but that does not work here.
Thanks
0
Comment
Question by:Mannsi
10 Comments
 
LVL 81

Expert Comment

by:zorvek (Kevin Jones)
ID: 22648037
Assuming you have a worksheet object, treat the columns as an integer (C = 3) and use the Cells object:

   TargetWorksheet.Cells(Row, Column)

Kevin
0
 
LVL 50

Expert Comment

by:Dave Brett
ID: 22648039
Can you pls expand on your question - it is not apparent what you are wanting to do with these strings, and how Excel fits in

Regards

Dave
0
 

Author Comment

by:Mannsi
ID: 22648072
I've got a few SQL queries that I run in VB, each giving me a single result. I then "paste" the results of the queries in Excel. The strings are supposed to guide VB to where the results should go. They need to be strings because the function that prints the result of the query says so.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 81

Expert Comment

by:zorvek (Kevin Jones)
ID: 22648098
Then you can use the Range method:

   TargetWorksheet.Range("C1") = Recordset!Field1

Kevin
0
 

Author Comment

by:Mannsi
ID: 22648152
I don't have a recordset, I use the below function.


Sub SendQuery(sDestRange As String, sODBC As String, sSQL As String)
    With ActiveSheet.QueryTables.Add(Connection:=sODBC,    Destination:=Range(sDestRange))
        .Sql = sSQL
        .FieldNames = False
        .RefreshStyle = xlInsertDeleteCells
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .RefreshOnFileOpen = False
        .HasAutoFormat = False
        .BackgroundQuery = True
        .TablesOnlyFromHTML = True
        .Refresh BackgroundQuery:=False
        .SavePassword = True
        .SaveData = True
    End With
End Sub

Open in new window

0
 
LVL 81

Expert Comment

by:zorvek (Kevin Jones)
ID: 22648181
And you need to determine how to set sDestRange? Use a simple string:

   SendQuery "C1", "...", "..."

Kevin
0
 

Author Comment

by:Mannsi
ID: 22648201
Yeah, but I have a loop for the SQL query that would be very nice to be able to use for the sDestRange instead of having to write the whole thing 50 times.
0
 
LVL 81

Accepted Solution

by:
zorvek (Kevin Jones) earned 500 total points
ID: 22648216
Dim Row As Long
For Row = 11 To 60
    SendQuery "C" & Row, "...", "..."
Next Row

Kevin
0
 
LVL 8

Expert Comment

by:mikainz
ID: 22648241
you can convert a integer into a string type by using the STRING function
0
 

Author Comment

by:Mannsi
ID: 22648242
lol, didn't try doing a "c" & i for my strings, just assumed that since "c" + i didn't work, neither would the other one. Thanks for the answer.
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Name Selection and Sorting 43 91
Determine dependencies 3 21
office 2010 not starting even in safe mode 7 70
Need adjust data counting 17 12
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Excel can be a tricky bit of software to get your head around. Whilst you’ll be able to eventually get to grips with the basic understanding of how to get by, there are a few Excel tips that not everybody will even know about let alone know how to d…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

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

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

Join & Ask a Question