25. september 2001 - 13:08Der er
11 kommentarer og 1 løsning
Dynamisk sortering
Hej, Jah, mine problemer er ikke overstået endnu - der opstår altid nye.
Jeg har en søgning, der åbner en valgt rapport(10 forskellige at vælge ml.)på baggrund af between kriterie (som der også er 10 forskellige af). Det skal være muligt at angive hvad resultatet af rapporten skal sorteres efter, og det sjove er så, at det skal brugeren selv vælge efter han har indtastet kriterie/kriterier. Fx. vælger han at se en \"emnerapport\" på alle kunder som har postnr 2000-2400. Når dette er sket, skal der dukke en formular op med 10 forskellige knapper - en for hver sortering (fx. sortering efter \"NAvn\" \"Nummer\" osv.) Når brugeren så trykker på knappen \"Navn\" kommer resultatet frem i den rapport han har valgt, og sorteret efter \"NAvn\". Smart, men jeg kan bare ikke lige gennemskue, hvad vba-koden skal være, for den skal være dynamisk på den måde, at sorteringen som brugeren vælger kan være forskellig fra gang til gang. Håber der er hjælp at hente
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hi numsi and Thomas! I have had a bit to do with this program so perhaps I can make some suggestions. On the form where you enter the intervals, for example 2000-2400 you could place checkbox beside each one. Then when you build your WHERE clause for opening the report you can also build a SORT clause. If it is only one field then you can do it as its done with the VIS button. Then you place the last two lines as Thomas says, after the docmd.openreport line. NOTE: SortOrder is a variable you use for the chosen sort field
I think it spossible to refrence a report like this. Oh something else numsi. I havent looked so much at the report form before, but you could simplify this quite a lot. You have almost the same code for each button. Place this in a function and send the name of the report and the sort order to the function. If you alter somethng there will only be one place to make the alteration, now you have ten!
Ok, jeg vil forsøge. Jeg har først tid til at kigge på det i aften, så jeg vender lige tilbage.
Men kan det så ikke lade sig gøre at sende navnet på rapporten til sorterings-formularen, så hvis brugeren trykker på sorteringen \"Navn\", så åbnes den pågældende rapport sorteret efter \"NAvn\"...?
Numsi-> mht at lave en funktion, så kunne den se således ud:
Public Function Udskriv(Rapportnavn as string, Sortering as String) docmd.Openreport Rapportnavn,acviewpreview Reports(Rapportnavn).OrderBy = SortOrder Reports(Rapportnavn).OrderByOn = True end sub
Denne funktion kalder du så bare fra hver af dine knapper.
Hej med jer, jeg har tænkt lidt over jeres forslag, men ang. terrys forslag, så vil han ikke bruge checkbokse, fordi han vil bruge musen så lidt som muligt. Derfor vil jeg holde fast i en løsning som skal være følgende: Brugeren indtaster kriterie, herefter vælger han en rapport og derefter popper der en formular op der spørger hvilke muligheder han vil sortere efter. Formularen der popper op skal se således ud:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Dim sOrder As String
If KeyCode = vbKey1 Then sOrder = \"Nummer\" End If
Jeg har brugt autokeys, så han fx bare kan taste 1 for at sortere resultatet efter \"Nummer\". Men hvordan skal koden være for at sortering ved hvilken rapport brugeren har valgt at ville se, og derved skal åbne efter valgt sortering??
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.