Avatar billede gylling Juniormester
06. oktober 2004 - 18:15 Der er 2 kommentarer og
3 løsninger

Papporter- flyt et felt med data til venstre.

Jeg har en tabel hvor det skal værer sådanne at man kan afkrydse om det skal vises på en rapport, det er nemt nok. men når nu at eks. at de 3 første koloner ikke skal vises men resten skal, hvordan få jeg så rapporten sådanne at de andre kolonner stå til venstre, se bedst ud .
Avatar billede jensen363 Forsker
06. oktober 2004 - 18:23 #1
Den kan laves, men ikke nemt ... du skal eksperimetere med at skjule/vise felter oveni hinanden, afhængig af din afkrydsning

Altså et eller andet med :

If Kolonne1Vis = -1 Then Kolonne1.Visible = True
                        Kolonne2.Visible = False
Else
                        Kolonne1.Visible = False
                        Kolonne2.Visible = True
End If

Feltet Kolonne1 og Kolonne2 placeres ovenpå hinanden i rapporten
           

  Else
Avatar billede nih Novice
06. oktober 2004 - 22:34 #2
Du kan også i rapportens ved åbning hændelse angive controlSource for forskellige elementer på rapporten:

Private Sub Report_Open(Cancel As Integer)

  me("tekstboxNavn1").ControlSource = etEllerAndet
  me("LabelNavn1").Caption = labelTekst

end sub

Fidusen går på at hente variablerne: etEllerAndet og labelTekst fra din form hvor kollonerne vælges. Evt vha et loop.

Niels
Avatar billede fdata Forsker
06. oktober 2004 - 23:45 #3
.. og så kunne du jo også angive feltets absolutte placering i Detaljesektionens VedFormatering hændelse, f.eks.:
  Me.Tekstboks1.Left=567
(Husk, at enheden er Twips. 567 Twips = 1 centimeter)
07. oktober 2004 - 09:31 #4
Jensen har ret i, at det kræver lidt arbjde.

Jeg har lavet et eksempel på min hjemmeside, som styrer kolonnerne dynamisk. Du kan downloade eksemplet her: http://www.makeiteasy.dk/eksempler/DynamiskRapport.zip

Problemet er så at styre hvilke kolonner, som skal skjules.
Men det kan laves ved at manipulere den forespørgsel, som danner rapporten.

Dvs på din formular, kan du 'skabe' forespørgslen, når brugeren klikker på rapport-knappen. Lidt á la dette:

Dim SQLStr as String
SQLStr = "Select "
If Me!Checkboks1 then
  SQLStr = SQLStr & "Felt1, "
endif
If Me!Checkboks2 then
  SQLStr = SQLStr & "Felt2, "
endif
If Me!Checkboks3 then
  SQLStr = SQLStr & "Felt3, "
endif
'...
'...
SQLStr = Left(SQLStr, Len(SQLStr)-2)
SQLStr = SQLStr & " From DinTabel"
Currentdb.Querydefs("Din forespørgsel").SQL = SQLStr
Docmd.Openreport "Din rapport", acviewpreview


Metoden kræver en reference til Microsoft DAO 3.x Object Library
Avatar billede gylling Juniormester
13. oktober 2004 - 09:28 #5
>>> til Alle jeg har kikket på jeres forslag og det er godt nok noget langt håret så jeg har valgt at i skal dele point, jeg har ikke helt kunne få det til at funger.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester