Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 09:52 Der er 20 kommentarer og
2 løsninger

Datavalidering - problemer med for mange tegn

Jeg har en række referencer: kort1, kort2 o.s.v.
I en celle,A1000, har jeg en datavalidering (liste):

=HVIS(SERIE="200";KORT1;HVIS(SERIE="300";KORT2;HVIS(SERIE="400";KORT3;HVIS(SERIE="500";KORT4;HVIS(SERIE="500";KORT5;HVIS(SERIE="600";KORT6;HVIS(MRK="ANDRE";TOM_KORT;H2306)))))))

Altså hvis referencen "SERIE" = 300, så er referencen til A1000 celleområdet "kort1".

Mit problem er at ca. 300 steder skal jeg bruge en tilsvarende datavalidering, men mine referencer består af 26 stk. a la "kort1". Desværre kan formlen i datavalidering ikke overskride 255 tegn.
Hvis man kunne lave sin formel a la =sammenføjning("kort" & 'variabel') var problemet løst, men hvordan?
Avatar billede janvogt Praktikant
06. maj 2004 - 10:07 #1
Du kunne måske lave et opslag i en tabel, hvor du har defineret dine sammenhænge.
Avatar billede janvogt Praktikant
06. maj 2004 - 10:09 #2
Det er lidt uklart, hvad du mener, men du kan evt. sende et eksempelark til mig, så skal jeg gerne kigge på det.
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 10:16 #3
Det er altafgørende at brugeren får sin valideringsliste frem ved tryk på cellen. Formlen i datavalidering skal tilsyneladende referere til et celleområde eller et cellenavn for at formlen kan accepteres. Celleområdet "kort1" accepteres såfremt det selvføglelig er oprettet, men f.eks =sammenkædning("kort" & "1") accepteres ikke!
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 10:20 #4
Sv. "Det er lidt uklart, hvad du mener"...

Hvis celleref. "SERIE" har værdien 200 skal datavalideringen i A1000 være =kort1
Hvis celleref. "SERIE" har værdien 300 skal datavalideringen i A1000 være =kort2
Hvis celleref. "SERIE" har værdien 400 skal datavalideringen i A1000 være =kort3
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 10:23 #5
Problemet er at når formlen i A1000 overstiger 255 tegn kan formlen ikke længere accepteres!
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 10:28 #6
Jeg kunne løse det med:
"hvis arket ændres og cellen er A1001, så kør macro der ændrer formlen i A1000"

Men det er ikke holdbart i 300 tilfælde, altså 300 forskellige steder på arket. Hvis mine 300 celler lå under eller ved siden af hinanden var det en løsning.
Avatar billede janvogt Praktikant
06. maj 2004 - 11:03 #7
Sender du ikke lige dit ark.
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 11:17 #8
Mit ark er firmarelateret (copyrighted)og fylder ca. 7 Mb. Derfor kan jeg ikke sende det!

Er der stadig noget du ikke forstår?
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 11:29 #9
ok jeg har lavet et lille eksempel. Hvor sender jeg det til?
Avatar billede janvogt Praktikant
06. maj 2004 - 11:34 #10
Jep, hvad er "SERIE" - hvorfra får du værdien.
Hvad er datavalideringen kort1, kort2, kort 3 ......
Heller ikke "hvis arket ændres og cellen er A1001, så kør macro der ændrer formlen i A1000"
forstår jeg.

Måske kunne du lave et eksempel-ark, som indeholder problemstillingen.
Avatar billede janvogt Praktikant
06. maj 2004 - 11:34 #11
ok fint - janvogt@esenet.dk
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 11:43 #12
SERIE er som i det sendte dokument cellen A1.
kort1 er cellerne D1:J1
kort2 er cellerne D2:J2
kort3 er cellerne D3:J3

"Hvis arket ændres" = Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Jeg gad ikke lige sidde og skrive en masse VBA-kode.
Avatar billede janvogt Praktikant
06. maj 2004 - 11:53 #13
Har modtaget arket.

Jeg tror du bruger datavalideringen forkert.
Hvad er det, som skal ske, når man skriver 200, 300, 400 el. 500?

Skal områderne kort1, kort2 osv. bruges som datavalidering(liste)? I hvilken celle?
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 11:59 #14
Skriver du 200 i celle A1 vil du i B1 kun kunne vælge værdier fra celleområdet D1:J1.

jeg kunne have bygget det op således at hvis du skrev "Danske mønters værdier" i celle A1 kunne du i B1 kun skrive... eller fra B1's dropdown kun vælge værdierne for danske mønter angivet i cellerne D1:J1
Avatar billede janvogt Praktikant
06. maj 2004 - 12:24 #15
Ok, så er jeg med :-)
Jeg kigger på det ......
Avatar billede janvogt Praktikant
06. maj 2004 - 13:45 #16
Løsning sendt.
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 14:01 #17
Hmm. Hvad peger "=opslag" på?
Avatar billede janvogt Praktikant
06. maj 2004 - 14:12 #18
Som jeg skriver i mailen kan du finde navnet og formlen under INDSÆT>NAVNE i menuen.
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 14:54 #19
Det ser godt ud, men jeg har lidt problemer da mine data ligger i et ark ved navn "DEF".
Jeg leger lidt med: =FORSKYDNING(INDIREKTE(SAMMENKÆDNING("DEF!";ADRESSE(SAMMENLIGN(E2281;DEF!HD2:HD54;0);1;;;)));0;11;1;32)
... men kan ikke lige få det til at virke!
Avatar billede janvogt Praktikant
06. maj 2004 - 15:03 #20
Er det dine tabel-data, som ligger i et andet ark?

Så kan du måske bruge:
=OFFSET(INDIRECT(ADDRESS(MATCH(Sheet1!$A$1;Sheet1!$F:$F;0);1;;;"DEF"));0;6;1;7)

Arknavnet er det sidste argument i ADDRESS-formlen.
Det burde ikke være nødvendigt at blande en SAMMENKÆDNING formel ind i det.
Avatar billede gider_ikke_mere Nybegynder
06. maj 2004 - 16:16 #21
Så enkelt kunne det gøres!

=FORSKYDNING(DEF!FM1;SAMMENLIGN(HJ4;PLC_DEF!FM1:FM26;0);11;1;32)
Med venlig hilsen ... og tak for hjælpen :-)))
Avatar billede janvogt Praktikant
07. maj 2004 - 03:46 #22
Velbekomme :-)
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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

IT-JOB

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer

Jyske Bank

AI-udvikler

Capgemini Danmark A/S

Head of Digital Trust & Security