Gregorys05
Board Regular
- Joined
- Sep 24, 2008
- Messages
- 217
Hi,
I am trying to run an SQL statement in VBA but it keep saying there are too few parameters. Below is the VBA SQL
When i look at it in the immediate window using debug.print i get
there is a break in the line around
if i remove the space and paste into an access query it runs but when i try and run the VBA i get the error.#
Any ideas on how to fix this
This is how it looks in access query
Thank you
I am trying to run an SQL statement in VBA but it keep saying there are too few parameters. Below is the VBA SQL
Code:
SQL1 = "PARAMETERS [Forms]![NBV date]![Chosen Date] Text ( 255 );"
SQL1 = SQL1 & " SELECT [all meters - operating leases].[Lease type], [all meters - operating leases].[Current Supplier],"
SQL1 = SQL1 & " tblSuppliercode.Group_Supplier, Count([all meters - operating leases].[Meter type 2]) AS [CountOfMeter type 21],"
SQL1 = SQL1 & " Sum([all meters - operating leases].[Current Rental]) AS [SumOfCurrent Rental1], Sum([all meters - operating leases].[Asset cost]) AS [SumOfAsset cost1],"
SQL1 = SQL1 & " Sum(IIf([all meters - operating leases]![Asset cost]-(((DateDiff(""m"",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1)"
SQL1 = SQL1 & " *[all meters - operating leases]![Depn amount]))<=0,0,[all meters - operating leases]![Asset cost]-"
SQL1 = SQL1 & " (((DateDiff(""m"",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount])))) AS NBV,"
SQL1 = SQL1 & " Sum([all meters - operating leases].[Asset cost])-(Sum(IIf([all meters - operating leases]![Asset cost]-"
SQL1 = SQL1 & " (((DateDiff(""m"",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount]))<=0,0,"
SQL1 = SQL1 & " [all meters - operating leases]![Asset cost]-(((DateDiff(""m"",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1)"
SQL1 = SQL1 & " *[all meters - operating leases]![Depn amount]))))) AS Depn"
SQL1 = SQL1 & " FROM [all meters - operating leases] INNER JOIN tblSuppliercode ON [all meters - operating leases].[Current Supplier] = tblSuppliercode.Supplier"
SQL1 = SQL1 & " GROUP BY [all meters - operating leases].[Lease type], [all meters - operating leases].[Current Supplier], tblSuppliercode.Group_Supplier;"
When i look at it in the immediate window using debug.print i get
Code:
PARAMETERS [Forms]![NBV date]![Chosen Date] Text ( 255 ); SELECT [all meters - operating leases].[Lease type], [all meters - operating leases].[Current Supplier], tblSuppliercode.Group_Supplier, Count([all meters - operating leases].[Meter type 2]) AS [CountOfMeter type 21], Sum([all meters - operating leases].[Current Rental]) AS [SumOfCurrent Rental1], Sum([all meters - operating leases].[Asset cost]) AS [SumOfAsset cost1], Sum(IIf([all meters - operating leases]![Asset cost]-(((DateDiff("m",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1) *[all meters - operating leases]![Depn amount]))<=0,0,[all meters - operating leases]![Asset cost]- (((DateDiff("m",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount])))) AS NBV, Sum([all meters - operating leases].[Asset cost])-(Sum(IIf([all meters - operating leases]![Asset cost]- (((DateDiff("m",[all meters - operating leases]![Depn start date],[Form
s]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount]))<=0,0, [all meters - operating leases]![Asset cost]-(((DateDiff("m",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1) *[all meters - operating leases]![Depn amount]))))) AS Depn FROM [all meters - operating leases] INNER JOIN tblSuppliercode ON [all meters - operating leases].[Current Supplier] = tblSuppliercode.Supplier GROUP BY [all meters - operating leases].[Lease type], [all meters - operating leases].[Current Supplier], tblSuppliercode.Group_Supplier;
there is a break in the line around
Code:
s]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount]))<=0,0,
if i remove the space and paste into an access query it runs but when i try and run the VBA i get the error.#
Any ideas on how to fix this
This is how it looks in access query
Code:
PARAMETERS [Forms]![NBV date]![Chosen Date] Text ( 255 ); SELECT [all meters - operating leases].[Lease type], [all meters - operating leases].[Current Supplier], tblSuppliercode.Group_Supplier, Count([all meters - operating leases].[Meter type 2]) AS [CountOfMeter type 21], Sum([all meters - operating leases].[Current Rental]) AS [SumOfCurrent Rental1], Sum([all meters - operating leases].[Asset cost]) AS [SumOfAsset cost1], Sum(IIf([all meters - operating leases]![Asset cost]-(((DateDiff("m",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1) *[all meters - operating leases]![Depn amount]))<=0,0,[all meters - operating leases]![Asset cost]- (((DateDiff("m",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount])))) AS NBV, Sum([all meters - operating leases].[Asset cost])-(Sum(IIf([all meters - operating leases]![Asset cost]- (((DateDiff("m",[all meters - operating leases]![Depn start date],[Form
s]![NBV date]![Chosen Date])+1)*[all meters - operating leases]![Depn amount]))<=0,0, [all meters - operating leases]![Asset cost]-(((DateDiff("m",[all meters - operating leases]![Depn start date],[Forms]![NBV date]![Chosen Date])+1) *[all meters - operating leases]![Depn amount]))))) AS Depn FROM [all meters - operating leases] INNER JOIN tblSuppliercode ON [all meters - operating leases].[Current Supplier] = tblSuppliercode.Supplier GROUP BY [all meters - operating leases].[Lease type], [all meters - operating leases].[Current Supplier], tblSuppliercode.Group_Supplier;
Thank you