Hoi,
Ik heb het volgende probleem:
Ik heb een vba code om op basis van een ingevulde waarde in een formulier iets op te zoeken uit een andere tabel. Deze code gaat als volgt:
en in de module:
Maar nu wil ik op basis van 2 argumenten gaan zoeken. Ik heb een tabel waarin deze 2 argumenten staan maar hoe laat ik hem nu op 2 argumenten zoeken?
Hij moet zoeken op basis van waarden uit het formulier: de 2 argumenten zijn:
ProductID en ResellerID.
Achterliggend verhaal is dat elke verschillende Reseller per product verschillende percentages als afspraak heeft dus:
Reseller1 heeft bij:
product 1 als percentage 4%
product 2 als percentage 2%
product 3 als percentage 8%
enz.
Reseller2 heeft bij:
product 1 als percentage 5%
product 2 als percentage 9%
product 3 als percentage 3%
enz.
Al deze afspraken zijn vastgelegd in 1 tabel namelijk: tabel_afspraken_resellers
Deze tabel is opgebouwd als volgt:
Kolomtitels: ResellerID------ProductID------AfgesprokenPercentage
-----------------1-----------------1-----------------4%
-----------------1-----------------2-----------------2%
-----------------enz.
-----------------2-----------------1-----------------5%
-----------------2-----------------2-----------------9%
Is het mogelijk om met de huidige code op basis van 2 argumenten te gaan zoeken of moet ik daarvoor een andere manier gebruiken?
Ik probeerde zelf o.a.:
maar dat werkt dus niet, hij blijft maar op 1 argument steken.
Tis een heel verhaal, maar ik hoop dat iemand hier iets op weet, ben er namelijk al een tijd mee bezig en heb tot nu toe nog geen oplossing gevonden.
Ik heb het volgende probleem:
Ik heb een vba code om op basis van een ingevulde waarde in een formulier iets op te zoeken uit een andere tabel. Deze code gaat als volgt:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| Private Sub ProductNaam_AfterUpdate() ProductID = ProductNaam Dim Product Product = Forms!Tabel_orders.ProductID DoCmd.OpenForm "Form_producten", , , , , acHidden DoCmd.GoToRecord acDataForm, "Form_producten", acGoTo, Product VraagTrailingOp 'naar module DoCmd.Close acForm, "Form_producten" End Sub |
en in de module:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| Public Sub VraagTrailingOp()
'fee uit record halen
Trailing = Forms!Form_producten.Trailing
'controle goede naam gekozen
Dim bericht
bericht = MsgBox("Je past nu de reseller aan, hiermee verandert de Fee in " & Trailing, vbYesNo)
If bericht = 7 Then
Exit Sub 'wanneer antwoord "nee" is gebeurt er niets
End If
Forms!Tabel_orders.Trailing = Trailing
End Sub |
Maar nu wil ik op basis van 2 argumenten gaan zoeken. Ik heb een tabel waarin deze 2 argumenten staan maar hoe laat ik hem nu op 2 argumenten zoeken?
Hij moet zoeken op basis van waarden uit het formulier: de 2 argumenten zijn:
ProductID en ResellerID.
Achterliggend verhaal is dat elke verschillende Reseller per product verschillende percentages als afspraak heeft dus:
Reseller1 heeft bij:
product 1 als percentage 4%
product 2 als percentage 2%
product 3 als percentage 8%
enz.
Reseller2 heeft bij:
product 1 als percentage 5%
product 2 als percentage 9%
product 3 als percentage 3%
enz.
Al deze afspraken zijn vastgelegd in 1 tabel namelijk: tabel_afspraken_resellers
Deze tabel is opgebouwd als volgt:
Kolomtitels: ResellerID------ProductID------AfgesprokenPercentage
-----------------1-----------------1-----------------4%
-----------------1-----------------2-----------------2%
-----------------enz.
-----------------2-----------------1-----------------5%
-----------------2-----------------2-----------------9%
Is het mogelijk om met de huidige code op basis van 2 argumenten te gaan zoeken of moet ik daarvoor een andere manier gebruiken?
Ik probeerde zelf o.a.:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| Dim Reseller Dim Product Reseller = Forms!Tabel_orders.ResellerID Product = Forms!Tabel_orders.ProductID DoCmd.OpenForm "Tabel_afspraken_resellers", , , , , acHidden DoCmd.GoToRecord acDataForm, "Tabel_afspraken_resellers", acGoTo, Reseller DoCmd.GoToRecord acDataForm, "Tabel_afspraken_resellers", acGoTo, Product VraagFeeOp 'naar module 'DoCmd.Close acForm, "Form_producten" DoCmd.Close acForm, "Tabel_afspraken_resellers" |
maar dat werkt dus niet, hij blijft maar op 1 argument steken.
Tis een heel verhaal, maar ik hoop dat iemand hier iets op weet, ben er namelijk al een tijd mee bezig en heb tot nu toe nog geen oplossing gevonden.