Print side | Luk vindue

Excel-hjælp

Udskrevet fra: recordere.dk - Danmarks AV Forum
Kategori: Generelle emner
Forumnavn: PC hardware & software
Forumbeskrivelse: Hardware & software, men ikke HTPC
Web-adresse: https://forum.recordere.dk/forum_posts.asp?TID=155696
Udskrevet den: 28-April-2024 kl. 23:06


Emne: Excel-hjælp
Skrevet af: Samsung_M
Emne: Excel-hjælp
Skrevet den: 02-Juli-2018 kl. 19:05
Hej Recorder

Er der en Excelbruger der kan hjælpe mig med nedenstående problemstilling?

Jeg har brug for at en celle sammenholder indholdet med en anden celle og returnerer et LOPSLAG funktion såfremt udsagnet er korrekt:

=HVIS(ELLER(B2="Alle";B2="JAN");LOPSLAG(A2;Udgifter!A2:D21;4;FALSK);"0")

Formlen siger, at celle B2 skal indeholde teksten "Alle" eller "JAN" hvorefter den skal lave et LOPSLAG i området A2:D21 - hvis ikke celle B2 indeholder teksten skal den returnere et 0.

Det virker sådan set fint nok men jeg har brug for at B2 blot skal indeholde delelementet JAN (så den også givet et sandt resultat hvis der eksempelvis stod "januar","jan,feb,mar" osv.). Med andre ord skal den søge i hele cellen og er de tre sammenhængende bogstager "JAN" repræsenteret er betingelsen opfyldt.

Jeg kan ikke greje hvordan jeg får den til det - er der nogle der kan hjælpe?

//Christian



Svar:
Skrevet af: thomnico
Skrevet den: 02-Juli-2018 kl. 19:19
hej

Hvis du skal søge i en celle på kombinationen “jan” så skal du lave et såkaldt wildcard.

Skriv: “*jan*” så leder den efter en tekststreng hvor der både kan være bogstaver før og efter jan

Håber det hjælper


-------------
Projektor: Benq w1070+
Lærred: 100" Elite screen motoriseret ELECTRIC100H-A1080
Center: XTZ Spririt 6
Front: XTZ Spririt 6
Bag og side: XTZ Spirit 2
Sub: B&W AW610
Receiver: Marantz SR7008


Skrevet af: Samsung_M
Skrevet den: 02-Juli-2018 kl. 19:25
Hej thomnico

Tak for dit input.

Det er muligt at jeg benytter det forkert men ændrer jeg min formel til:

=HVIS(ELLER(B2="Alle";B2="*Jan*");LOPSLAG(A2;Udgifter!A2:D21;4;FALSK);"0")

Returnerer den et "0" på alt andet end B2=Alle..

Skal det indsættes anderledes end det jeg gør?

//Christian


Skrevet af: thomnico
Skrevet den: 02-Juli-2018 kl. 20:19
for helved... nu er jeg jo bare NØD til at finde en løsning, over på PC'en...Wink

-------------
Projektor: Benq w1070+
Lærred: 100" Elite screen motoriseret ELECTRIC100H-A1080
Center: XTZ Spririt 6
Front: XTZ Spririt 6
Bag og side: XTZ Spirit 2
Sub: B&W AW610
Receiver: Marantz SR7008


Skrevet af: thomnico
Skrevet den: 02-Juli-2018 kl. 20:39
Jeg testede den lige af og det er ikke wildcard der er noget problem med, men jeg tror det er din logiske test i din "hvis"formel den er gal med. Jeg prøvede for sjov en alm vlookup (bruger engelsk) med et wildcard og det fungerede fint.

VLOOKUP("*jan*";H3:I3;2;FALSE)

lidt google fortæller mig at Hvis funktionen ikke kan bruge Wildcard, men det kan vlookup



-------------
Projektor: Benq w1070+
Lærred: 100" Elite screen motoriseret ELECTRIC100H-A1080
Center: XTZ Spririt 6
Front: XTZ Spririt 6
Bag og side: XTZ Spirit 2
Sub: B&W AW610
Receiver: Marantz SR7008


Skrevet af: thomnico
Skrevet den: 02-Juli-2018 kl. 21:43
Så faldt den på plads, sikkert en alt for lang og helt umulig formel der findes andre langt bedre løsninger på, men det virker :-)

=IFERROR(HLOOKUP(IF(COUNTIF(B3;"*jan*");"jan";IF(COUNTIF(B3;"*alle*");"alle";0));G3:I4;2;FALSE);0)

Jeg fandt ud af at man kunne omgå det at man ikke kan bruge wildcards direkte i IF(hvis) formler ved at bruge countif (tælhvis). Men kort så er iferror formlen der til at returnere 0 værdi hvis ikke nogle af de 2 betingelser er opfyldt. Hlookup (Lopslag) er for at slå værdi "jan" eller "alle" op. Jeg har markeret de værdier med FED du skal ændre så det passer til din case

B3 skal være den celle du vil undersøge din hypotese på 
G3:I4 skal være den range du vil lave dit opslag på 
2 er den række du vil lede efterværdien i dit opslag

håber det virker



-------------
Projektor: Benq w1070+
Lærred: 100" Elite screen motoriseret ELECTRIC100H-A1080
Center: XTZ Spririt 6
Front: XTZ Spririt 6
Bag og side: XTZ Spirit 2
Sub: B&W AW610
Receiver: Marantz SR7008


Skrevet af: Samsung_M
Skrevet den: 03-Juli-2018 kl. 21:28
Hej thomnico

Tusinde tak for din store hjælp!

Jeg ender nok med at bruge en afart af dit forslag:

=(HVIS.FEJL(HVIS(TÆL.HVIS(B4;"*jan*");LOPSLAG(A4;A11:D30;4;FALSK);0);0))
og
=(HVIS.FEJL(HVIS(TÆL.HVIS(B4;"*alle*");LOPSLAG(A4;A11:D30;4;FALSK);0);0))

Dette, da jeg bliver nødt til at lave et opslag mod en anden celle (A4) - det er her min værdi skal søges i LOPSLAGET (altså opfylder celle B4 kriteriet "jan" eller "alle" skal der laves et LOPSLAG med værdien fra celle A4 i celleområdet A11:D30).

Formlerne virker perfekt hver for sig - jeg kan bare ikke greje hvordan jeg får dem samlet i én formel??

Må jeg bede om din hjælp en sidste gang?

På forhånd 1000 tak!

//Christian


Skrevet af: Samsung_M
Skrevet den: 03-Juli-2018 kl. 23:38
Så var den der!

=HVIS(ELLER(HVIS(TÆL.HVIS(B4;"*jan*");LOPSLAG(A4;A11:D30;4;FALSK);0);HVIS(TÆL.HVIS(B4;"*alle*");LOPSLAG(A4;A11:D30;4;FALSK);0));LOPSLAG(A4;A11:D30;4;FALSK);0)

Meget uelegant men det virker!

//Christian


Skrevet af: thomnico
Skrevet den: 04-Juli-2018 kl. 10:51
det kan det nogle gange være, men jeg tror faktisk du vil kunne bruge min formal og blot ændre der hvor jeg angiver “jan” og “alle” som output, til den celle du har værdien du skal slå op i (A4)

Godt det virkede


-------------
Projektor: Benq w1070+
Lærred: 100" Elite screen motoriseret ELECTRIC100H-A1080
Center: XTZ Spririt 6
Front: XTZ Spririt 6
Bag og side: XTZ Spirit 2
Sub: B&W AW610
Receiver: Marantz SR7008


Skrevet af: tipsen
Skrevet den: 04-Juli-2018 kl. 10:55
isnumber(find/search) giver sand/falsk og er case sensitive/-insensitive afhængig af om du bruger find eller search.


Skrevet af: tipsen
Skrevet den: 04-Juli-2018 kl. 11:16
Lidt mere elegant udgave: (kun delvist testet - kræver måske rettelser i småtingsafdelingen)

=IF(COUNT(SEARCH({"jan";"alle"};B2));VLOOKUP(A2;Udgifter!A2:D21;4;False);0)



Print side | Luk vindue