Selecteren bij openen rapport

Status
Niet open voor verdere reacties.

Japsur

Gebruiker
Lid geworden
9 apr 2004
Berichten
650
Hallo,

Ik zit met een probleempje.
Ik heb het volgende:

Een form. met 10 keuzerondjes. Hiervan moet ik er 1 selecteren.
Vervolgens wil ik uit een keuzelijst iets selecteren. (Keuzelijst komt van een query en dan dus groter of kleiner worden)

Wanneer ik iets geselecteerd hebt, moet ie een rapport openen (NAW)
Hierin moet ie als eerste filteren op 1 van de 10 keuzerondjes. Daarna moet ie op nog iets filteren. Dit werkt goed maar nu:

Hij moet ook filteren van wat gelijk op wat ik selecteer in de keuzelijst. Vervolgens moet ie alle records weergeven die aan al deze voorwaarden voldoen. Voldoet 1 van de voorwaarden niet (bij de laatste filter bijv), dan moet ie een leeg rapport weergeven of het rapport niet openen.

Hieronder heb ik mijn code tot nu toe geplakt. Deze werkt niet goed, want hij geeft totaal geen waarden weer in het rapport op deze manier wanneer er wel wordt voldaan aan de voorwaarden.

Alvast bedankt!

Private Sub Categorie_AfterUpdate()
Dim Categorie As Control, varItem As Variant
Set Categorie = Forms!Overzichten!Categorie
If Categorie > ("") _
And Keuzerondje59.Value = True Then
DoCmd.OpenReport "NAW", acViewPreview, "NAW alles", "([AccountverantwoordelijkeID]=1 and [bestaande klant]=No and [Categorie]='Categorie')"
End If
End Sub
 
Als ik je goed begrijp,

Je hebt een formulier(Form1) met keuzerondjes en een keuzelijst.
Kies je een rondje dan wordt zo de inhoud van de keuzelijst bepaald. (Query1)

Vervolgens wil je een rapport wat de gegevens selecteerd op basis van de keuzerondjes (Query1) en je keuze uit de keuzelijst.(keuzelijst1)

Volgens mij moet je dan het volgende doen, een query (Query2) maken die gebaseerd is op Query1 (eventueel aanvullen met extra tabellen voor meer gegevens) en in die query bij het veld wat door je keuzelijst bepaald moet worden de voorwaarde opnemen dat het de gekozen waarde van de keuzelijst is.
Dit ziet er uit als : [Forms]![Form1]![keuzelijst1]
Uiteraard moet de afhangkelijke kolom van de keuzelijst in je formulier wel detzelfde gegevens hebben als de kolom in de query waar je de voorwaarde voor opneemt.

Succes.
 
M.Broere zei:
Je hebt een formulier(Form1) met keuzerondjes en een keuzelijst.
Kies je een rondje dan wordt zo de inhoud van de keuzelijst bepaald. (Query1)

Vervolgens wil je een rapport wat de gegevens selecteerd op basis van de keuzerondjes (Query1) en je keuze uit de keuzelijst.(keuzelijst1)

Volgens mij moet je dan het volgende doen, een query (Query2) maken die gebaseerd is op Query1 (eventueel aanvullen met extra tabellen voor meer gegevens) en in die query bij het veld wat door je keuzelijst bepaald moet worden de voorwaarde opnemen dat het de gekozen waarde van de keuzelijst is.
Dit ziet er uit als : [Forms]![Form1]![keuzelijst1]
Uiteraard moet de afhangkelijke kolom van de keuzelijst in je formulier wel detzelfde gegevens hebben als de kolom in de query waar je de voorwaarde voor opneemt.

Succes.

Ik ben hiermee aan de haal geweest maar met negatief resultaat in de vorm dat het mij niet lukt helaas.
Hoe op te lossen??
 
Op zich is dit een heel simpel probleem, alleen het zo uitleggen is moeilijk.
Post je database even, dan is de oplossing er zo ingebouwd.
 
Hier een voorbeeldje

Ik heb hier een tabel met jaar-maand-begin en einddatum (niet ieder jaar heeft alle maanden)

In Form1, via (3) keuzerondjes kies je jaar.
Daardoor wordt je keuzelijst gevuld met de voor dat jaar beschikbare maanden.

Kies je daarna de rapportknop dan krijg je de gegevens van gekozen maand in je rapport.

Succes.
 

Bijlagen

  • db1.zip
    16,1 KB · Weergaven: 50
M.Broere zei:
Ik heb hier een tabel met jaar-maand-begin en einddatum (niet ieder jaar heeft alle maanden)

In Form1, via (3) keuzerondjes kies je jaar.
Daardoor wordt je keuzelijst gevuld met de voor dat jaar beschikbare maanden.

Kies je daarna de rapportknop dan krijg je de gegevens van gekozen maand in je rapport.

Succes.

Ja dit werkt, ik had niet uit je verhaal begrepen dat het zo zou moeten.
maar goed ik wil hier nog iets dieper op in, kom ik er nog niet uit.

Nu wil ik dat ie iedereen neemt van de keuzerondjes
vb.
1. jan
2. klaas
3. piet

Nu wil ik dus een rapport showen waarin zowel 1, 2 als 3 voorkomt. vervolgens wil ik de keuzelijst gebruiken. dus dan moet hij iedereen pakken. Hoe pak ik dit aan. Ik neem dat het met de criteria moet in de query, maar dat ben ik niet zeker.

In jouw voorbeeldje:
ik wil nu alle jaren zien van de 2e maand. (dus een extra keuzerondje of iets dergelijks met daarin alle jaren)

Heb je hier ook iets op. bvd!
 
Dat is simpel, gevoon IIF gebruiken

Goedemorgen/middgag,

Gebruik een keuzerondje met als keuze alle en neem in de query onder jaar op:

Iif([Forms]![Formulier1]![Kader0]="alle";[Tabmaandjaar]![ID_Jaar];[Forms]![Formulier1]![Kader0])

Dat zou het dan moeten zijn.

Succes
:thumb:
 
M.Broere zei:
Gebruik een keuzerondje met als keuze alle en neem in de query onder jaar op:

Hoe kan ik dat ingeven: keuze 'alle'. Ik zie nu alleen maar 4 (= 4e keuzerondje), kan ik daar wel meerdere getallen in plaatsen. Dat kan naar mijn idee niet omdat het een numeriek veld is. Anders weet ik het scheidingsteken hiervan niet.
dus tot nu toe doet ie nog niet.
 
Het andere probleem is middels opgelost, nu zit ik met een ander punt.

Ik wil nu door een selectierondje juist alles zien wat NIET een naam heeft toegekend gekregen.
bijv. accountwoordelijke bij record 1 is jan, bij record 2 is deze nog niet ingevuld en bij record 3 is het bijv. Piet.

Nu heb ik middels de formule IIf([Forms]![Overzichten2]![Kader0]=11;[Accountverantwoordelijk]![AccountverantwoordelijkeID];[Forms]![Overzichten2]![Kader0])

Nu krijg ik alle records te zien die bij accountverantwoordelijke is ingevuld, maar nu wil ik alle records zien waar nog niets is in gevuld. De nummers 1 t/m 10 zijn accountverantwoordelijken per naam en 11 valt iedereen onder.

weet iemand de oplossing?
Bvd.
 
Ik snap even niet wat nu precies je probleem is.
Begin even een nieuwe vraag en leg duidelijk uit wat het probleem is.
Post bij voorkeur dat stukje van je mdb waar het probleem in zit (zip, geen rar).
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan