ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Populating a Validation List with SQL (https://www.excelbanter.com/excel-programming/298365-populating-validation-list-sql.html)

Rone

Populating a Validation List with SQL
 
I keep getting an error (Automation Error. The object invoked has disconnected from its clients.) when I'm using a variable with a lot of data to populate my validation list box using SQL. However, if I hardcode in the same values instead of using a variable then it works fine. I would like to supply this information dynamically from a database so the data is updated without user intervention. Any ideas? Here is the code I'm using

Sub Build_Dropdown_List(ByVal strWrkSheet As String, ByVal strRange As String, ByVal strValues As String
Dim strQuote As Strin
On Err GoTo errHandle

strQuote = """
With Worksheets(strWrkSheet).Range(strRange).Validatio
.Delet
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=
xlBetween, Formula1:=strValues <--------------"THIS IS THE PLACE WHERE THE PROBLEM OCCURS"---------------
.IgnoreBlank = Tru
.InCellDropdown = Tru
.InputTitle = "
.ErrorTitle = "
.InputMessage = "
.ErrorMessage = "
.ShowInput = Tru
.ShowError = Tru
End Wit
End Su


Dick Kusleika[_2_]

Populating a Validation List with SQL
 
Rone

I don't know this for a fact, but I'll be there's a limit to what you can
pass to Formula1. And I'll be it's 255 characters, but I haven't tested it.
Try this

Operator:= _ xlBetween, Formula1:=Left(strValues,254)

If that works, keep going up and see when it breaks.

--
Dick Kusleika
MVP - Excel
Excel Blog - Daily Dose of Excel
www.dicks-blog.com


Rone wrote:
I keep getting an error (Automation Error. The object invoked has
disconnected from its clients.) when I'm using a variable with a lot of
data to populate my validation list box using SQL. However, if I
hardcode in the same values instead of using a variable then it works
fine. I would like to supply this information dynamically from a
database so the data is updated without user intervention. Any ideas?
Here is the code I'm using:

Sub Build_Dropdown_List(ByVal strWrkSheet As String, ByVal strRange As
String, ByVal strValues As String) Dim strQuote As String
On Err GoTo errHandler

strQuote = """"
With Worksheets(strWrkSheet).Range(strRange).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator:= _ xlBetween, Formula1:=strValues
<--------------"THIS IS THE PLACE WHERE THE PROBLEM
OCCURS"---------------- .IgnoreBlank = True .InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub





All times are GMT +1. The time now is 05:15 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com