2010-09-07 3 views
0

I hv created a From Date & To Date in excel (Sheet1). Под ячейкой A3, I hv From Date :: 01-01-2010 и ячейкой A4 до даты :: 31-08-2010.Как создать макрос Excel с диапазоном дат

Как связать диапазон дат ниже макрокоманды: -

Sub Sales() 

Dim StrSQl As String 

Con = "Provider=IBMDA400;Data Source=XXX.XXX.XXX.XXX;User Id=yyyy;Password=zzzz" 

Set Db = CreateObject("ADODB.Connection") 
Set rs = CreateObject("ADODB.recordset") 
Db.connectionSTring = Con 
Db.Open 
StrSQl = "select myuc, sum (myac) as Amount from myabc.myqwerty where mydt >= 20100101 and mydt <= 20100831 group by (mycl)" 
rs.Open StrSQl, Db, 3, 3 
Sheet1.Cells(10, 1).CopyFromRecordset rs 
rs.Close 
Set rs = Nothing 
Set cn = Nothing 
End Sub 

Pls принять к сведению формат даты между первенствует & заявление SQL. Оба формата в разных форматах.

Спасибо.

ответ

1

Возможно:

FromDate=Format(Sheet1.Range("A3"),"yyyymmdd") 
ToDate=Format(Sheet1.Range("A4"),"yyyymmdd") 
StrSQl = "select myuc, sum (myac) as Amount from myabc.myqwerty where mydt >= " 
    & FromDate & " and mydt <= " & ToDate & " group by (mycl)" 
+0

После того, как вставлен выше, система запроса с сообщением об ошибке. Ошибка выполнения «6»: переполнение под FromDate = Format (Sheet1.Range («A3»), «yyyymmdd»). – Bob

+0

Что, если угодно, вы объявляли FromDate As? Кстати, я тестировал, прежде чем отправил. – Fionnuala

+0

Он работает, так как я изменил формат ввода на yyymmdd с 01-01-2010. Просто нужно обучить пользователей нового формата. – Bob

Смежные вопросы