PC Review


Reply
Thread Tools Rate Thread

ComboBox and rowsource from an external sheet

 
 
Andrew
Guest
Posts: n/a
 
      9th Mar 2010
Hello,
I'm trying to fill a combo box from a column of names in another
workbook. Here's what I have:

menu.ComboBox1.RowSource = "'C:\[data.xls]'!A1:A100"

This appears to be correct. I get an error code 380 - could not set
row source property. Can someone tell me what is wrong with this
code?

thanks,
 
Reply With Quote
 
 
 
 
Dave Peterson
Guest
Posts: n/a
 
      9th Mar 2010
First, you'll have to open the data.xls workbook.

Then you can use:

Dim myRng as range

with workbooks("data.xls").worksheets("youdidn'tgivethename!")
set myrng = .range("a1:A10")
end with
....more code...
menu.combobox1.rowsource = myrng.address(external:=true)

Or if you want to close that data.xls workbook, you could just plop the values
from the range into the combobox.

menu.combobox1.list = myrng.value



Andrew wrote:
>
> Hello,
> I'm trying to fill a combo box from a column of names in another
> workbook. Here's what I have:
>
> menu.ComboBox1.RowSource = "'C:\[data.xls]'!A1:A100"
>
> This appears to be correct. I get an error code 380 - could not set
> row source property. Can someone tell me what is wrong with this
> code?
>
> thanks,


--

Dave Peterson
 
Reply With Quote
 
OssieMac
Guest
Posts: n/a
 
      9th Mar 2010
Hi Andrew,

'[Data.xls]Sheet1'!A1:A100

It appears that Data.xls needs to be open to use it as the Rowsource for the
Combo Box.

You can get the syntax for stuff like that by selecting an empty cell in
your workbook and enter = and then select the workbook and then the range and
press Enter. Then just select the formula in the formula bar and copy, press
enter or Esc to get out of the formula bar and paste it into the RowSource.

You might be better to make a range in the workbook with the ComboBox equal
to the range in Data.xls and then use the range in the workbook. That way
Data.xls does not need to be open.


--
Regards,

OssieMac


"Andrew" wrote:

> Hello,
> I'm trying to fill a combo box from a column of names in another
> workbook. Here's what I have:
>
> menu.ComboBox1.RowSource = "'C:\[data.xls]'!A1:A100"
>
> This appears to be correct. I get an error code 380 - could not set
> row source property. Can someone tell me what is wrong with this
> code?
>
> thanks,
> .
>

 
Reply With Quote
 
Andrew
Guest
Posts: n/a
 
      10th Mar 2010
On Mar 9, 4:35*pm, OssieMac <Ossie...@discussions.microsoft.com>
wrote:
> Hi Andrew,
>
> '[Data.xls]Sheet1'!A1:A100
>
> It appears that Data.xls needs to be open to use it as the Rowsource for the
> Combo Box.
>
> You can get the syntax for stuff like that by selecting an empty cell in
> your workbook and enter = and then select the workbook and then the range and
> press Enter. Then just select the formula in the formula bar and copy, press
> enter or Esc to get out of the formula bar and paste it into the RowSource.
>
> You might be better to make a range in the workbook with the ComboBox equal
> to the range in Data.xls and then use the range in the workbook. That way
> Data.xls does not need to be open.
>
> --
> Regards,
>
> OssieMac
>
> "Andrew" wrote:
> > Hello,
> > I'm trying to fill a combo box from a column of names in another
> > workbook. *Here's what I have:

>
> > menu.ComboBox1.RowSource = "'C:\[data.xls]'!A1:A100"

>
> > This appears to be correct. *I get an error code 380 - could not set
> > row source property. *Can someone tell me what is wrong with this
> > code?

>
> > thanks,
> > .


Thanks for your help on the sheet name. But if I use a range then I
can simply call the information from another sheet without having to
open the other sheet. Okay, now another question. How do I call a
range in another workbook?
 
Reply With Quote
 
Andrew
Guest
Posts: n/a
 
      10th Mar 2010
On Mar 10, 5:09 am, Andrew <andrewkgent...@gmail.com> wrote:
> On Mar 9, 4:35 pm, OssieMac <Ossie...@discussions.microsoft.com>
> wrote:
>
>
>
> > Hi Andrew,

>
> > '[Data.xls]Sheet1'!A1:A100

>
> > It appears that Data.xls needs to be open to use it as the Rowsource for the
> > Combo Box.

>
> > You can get the syntax for stuff like that by selecting an empty cell in
> > your workbook and enter = and then select the workbook and then the range and
> > press Enter. Then just select the formula in the formula bar and copy, press
> > enter or Esc to get out of the formula bar and paste it into the RowSource.

>
> > You might be better to make a range in the workbook with the ComboBox equal
> > to the range in Data.xls and then use the range in the workbook. That way
> > Data.xls does not need to be open.

>
> > --
> > Regards,

>
> > OssieMac

>
> > "Andrew" wrote:
> > > Hello,
> > > I'm trying to fill a combo box from a column of names in another
> > > workbook. Here's what I have:

>
> > > menu.ComboBox1.RowSource = "'C:\[data.xls]'!A1:A100"

>
> > > This appears to be correct. I get an error code 380 - could not set
> > > row source property. Can someone tell me what is wrong with this
> > > code?

>
> > > thanks,
> > > .

>
> Thanks for your help on the sheet name. But if I use a range then I
> can simply call the information from another sheet without having to
> open the other sheet. Okay, now another question. How do I call a
> range in another workbook?


Please allow me to restate: I haven't been able to find any
information on using paths in VBA. If found an online example for a
function called GetValue(), but that function appears to be
unsupported or outdated. Can someone explain how to deal with paths.

set mypath = "C:\datafiles\data012210.xls" - this "would be the path
to the spreadsheet
 
Reply With Quote
 
OssieMac
Guest
Posts: n/a
 
      11th Mar 2010
Hi Andres,

Basically the workbook must be open to use it as the Rowsource of the
ComboBox in which case the path is not required. The path in this instance
will cause an error because it is not part of an open workbook name. If you
don't want the workbook to be open then set a range in the workbook with the
combo box equal to the range in the other workbook then use that range with
the combobox.

When setting a range equal to the range in the Data workbook, simply select
the range in the data workbook then select the first cell of where you want
it in the workbook with the combo and paste special link. Close the Data
workbook and excel will look after setting the path, workbook and worksheet
name to the link.

Your use of paths is not incorrect for places where you do require them.


--
Regards,

OssieMac


"Andrew" wrote:

> On Mar 10, 5:09 am, Andrew <andrewkgent...@gmail.com> wrote:
> > On Mar 9, 4:35 pm, OssieMac <Ossie...@discussions.microsoft.com>
> > wrote:
> >
> >
> >
> > > Hi Andrew,

> >
> > > '[Data.xls]Sheet1'!A1:A100

> >
> > > It appears that Data.xls needs to be open to use it as the Rowsource for the
> > > Combo Box.

> >
> > > You can get the syntax for stuff like that by selecting an empty cell in
> > > your workbook and enter = and then select the workbook and then the range and
> > > press Enter. Then just select the formula in the formula bar and copy, press
> > > enter or Esc to get out of the formula bar and paste it into the RowSource.

> >
> > > You might be better to make a range in the workbook with the ComboBox equal
> > > to the range in Data.xls and then use the range in the workbook. That way
> > > Data.xls does not need to be open.

> >
> > > --
> > > Regards,

> >
> > > OssieMac

> >
> > > "Andrew" wrote:
> > > > Hello,
> > > > I'm trying to fill a combo box from a column of names in another
> > > > workbook. Here's what I have:

> >
> > > > menu.ComboBox1.RowSource = "'C:\[data.xls]'!A1:A100"

> >
> > > > This appears to be correct. I get an error code 380 - could not set
> > > > row source property. Can someone tell me what is wrong with this
> > > > code?

> >
> > > > thanks,
> > > > .

> >
> > Thanks for your help on the sheet name. But if I use a range then I
> > can simply call the information from another sheet without having to
> > open the other sheet. Okay, now another question. How do I call a
> > range in another workbook?

>
> Please allow me to restate: I haven't been able to find any
> information on using paths in VBA. If found an online example for a
> function called GetValue(), but that function appears to be
> unsupported or outdated. Can someone explain how to deal with paths.
>
> set mypath = "C:\datafiles\data012210.xls" - this "would be the path
> to the spreadsheet
> .
>

 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

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

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
RowSource as Sheet Names in UserForm ComboBox Orion Cochrane Microsoft Excel Programming 1 24th Aug 2009 08:51 PM
RowSource for Sheet ComboBox Minitman Microsoft Excel Worksheet Functions 3 24th Mar 2008 09:43 PM
Combobox rowsource based on value of other combobox =?Utf-8?B?UmljaCBK?= Microsoft Access Form Coding 0 9th Nov 2004 10:15 PM
How Do I Load A ComboBox RowSource From The Results Of Another ComboBox Minitman Microsoft Excel Programming 3 26th Oct 2004 07:58 PM
Re: Combobox rowsource Larry Daugherty Microsoft Access 8 21st Sep 2004 08:40 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 01:40 AM.