Avatar billede dk_akj Nybegynder
24. januar 2003 - 21:18 Der er 26 kommentarer og
2 løsninger

Problem med instr og instrrev

Jeg fatter ikke hvorfor det ikke virker, det burde være så simpelt.

A1 = "akj akj"
B1 = =instr(A1;" ")

I B1 får jeg nu bare #NAME?

WHY ??

//akj
Avatar billede Slettet bruger
24. januar 2003 - 21:22 #1
Der er såvidt jeg husker ikke nogen funktion der hedder instr i Excel...

Prøv med:
=SEARCH(" ";A1)
Avatar billede sjap Praktikant
24. januar 2003 - 21:26 #2
Jag har det ligesom blackadder. Hvad er det funktionerne skal gøre?
Avatar billede sjap Praktikant
24. januar 2003 - 21:28 #3
Jeg tror det er en VBA-funktion, der ikke kan kaldes direkte fra en celle i et regneark.
Avatar billede dk_akj Nybegynder
24. januar 2003 - 21:29 #4
Search virker men den kan jo ikke reverse.

Jeg bruger instr og instrrev på arbejde. XL2000 begge steder.

//akj
Avatar billede Slettet bruger
24. januar 2003 - 21:35 #5
Hvad er det du gerne vil opnå ?
Avatar billede dk_akj Nybegynder
24. januar 2003 - 21:41 #6
Det er såmænd bare dovenskab :o) Jeg har en liste med 100 navne hvor fornavn evt, mellemnavn og efternavn står i en col. Det skal splittes i 2.

Jeg laver det i vbscript istedet.

Tak for hjælpen
//akj
Avatar billede sjap Praktikant
24. januar 2003 - 21:44 #7
Jeg har ikke XL2000, så jeg kan selvfølgelig ikke sige hvilke funktioner, der findes der. Den eneste InStr funktion jeg kender, svarer i selve regnearket bedst til Search (På dansk: Find) som blackadder skriver.

Muligvis skal du aktivere et tilføjelsesprogram for at aktivere funktionen.
Avatar billede Slettet bruger
24. januar 2003 - 21:51 #8
Hvis du har "Hans Jensen" i A1..

i B1:
=MID(A1;1;SEARCH(" ";A1))

i C1
=MID(A1;SEARCH(" ";A1);LEN(A1))

burde gøre det du ønsker.
Det er kun testet med 2 navne, men hvis du kan se princippet...
Avatar billede dk_akj Nybegynder
24. januar 2003 - 21:51 #9
Det kan jo godt være jeg har fået noget mere installeret på arbejde.

Nå, nu er scriptet lavet, det er trods alt sjovere at bruge 15 min. på et script end 10 min på sekretærarbejde ;o)

Ved i forresten om der er en funktion til at rette "LARS L. TYNDSKID" til Lars L. Tyndskid" ??

//Akj
Avatar billede Slettet bruger
24. januar 2003 - 21:54 #10
Ja, den hedder PROPER i den engelske version
f.eks:
Hvis A1 = "HANS JENSEN"

=PROPER(A1) giver "Hans Jensen"
Avatar billede bak Forsker
24. januar 2003 - 21:54 #11
=STORT.FORBOGSTAV("LARS L. TYNDSKID")
Avatar billede Slettet bruger
24. januar 2003 - 21:58 #12
Rettelse til min tidligere formel

=MID(A1;SEARCH(" ";A1);LEN(A1))

Rettes til
=MID(B2;SEARCH(" ";B2);LEN(B2)-(SEARCH(" ";B2))+1)

Selvom det giver det samme resultat med 2 navne..
Avatar billede Slettet bruger
24. januar 2003 - 21:59 #13
bak >> jeg kom til at tænke på...er det muligt at lave en array formel der spejler en tekststreng ?
Avatar billede dk_akj Nybegynder
24. januar 2003 - 22:03 #14
takker, "proper" var nok det eneste jeg ikke har prøvet, måske jeg skulle installere hjælpefilerne til xl ;o)

//Akj
Avatar billede bak Forsker
25. januar 2003 - 16:43 #15
Blackadder-> Det er sikkert muligt, men jeg synes ikke at jeg kan.
Jeg har prøvet og fejlet :-(
Avatar billede Slettet bruger
25. januar 2003 - 16:53 #16
bak >> Jeg fik lavet en funktion der gør det, men erfaring fra tidligere E! spørgsmål viser at mange gange er der en array formel på én linie der kan nøjagtig det samme :-)

---------
Public Function ReverseText(strIn As String) As String

Dim strArray() As String
Dim strOut As String
Dim strLength, i As Integer

strLength = Len(strIn)
ReDim strArray(strLength)

For i = 1 To strLength
    strArray(i) = Mid(strIn, i, 1)
Next i

i = 1
For i = strLength To i Step -1
    strOut = strOut & strArray(i)
Next i

ReverseText = strOut
End Function
-----------
Avatar billede janvogt Praktikant
27. januar 2003 - 14:20 #17
>bak og blackadder

Der behøves hverken VBA eller en array-formel ....
Prøv =CALL("Msvcrt40";"_strrev";"1F";A1)
Avatar billede bak Forsker
27. januar 2003 - 14:47 #18
Jan, ideen er god, men jeg kan ikke lige få det til at funke..
Avatar billede janvogt Praktikant
27. januar 2003 - 14:51 #19
Husk at referere til celle A1.
Det fungerer perfekt i min gode gamle Excel 97 :-)
Avatar billede Slettet bruger
27. januar 2003 - 14:57 #20
Jeg kan heller ikke få det til at virke.
Jeg har indsat det i C1.

Jeg får en fejl der hedder
"This function is not valid"

Jeg bruger Win2000 + Office XP
Avatar billede janvogt Praktikant
27. januar 2003 - 15:06 #21
Måske virker det kun i Excel97.

Prøv evt. =CALL("Msvcrt40";"_strrev";"1F";"abcd")

"abcd" skulle gerne blive til "dcba" i den celle formlen sættes ind.
Avatar billede janvogt Praktikant
27. januar 2003 - 15:08 #22
Bak, du er vel ikke gået hen og blevet utro mod Excel 97 :-|
Avatar billede janvogt Praktikant
27. januar 2003 - 15:17 #23
Jep, det virker kun op til Excel 97 - fandt følgende på nettet:

NOTE:  The CALL function has been disabled in Excel 2000, because it represented a very serious security risk.  This page refers to Excel 97 only, not Excel 2000 or Excel 2002. http://www.cpearson.com/excel/Call.htm
Avatar billede Slettet bruger
27. januar 2003 - 15:48 #24
Ok, tilbage er så kun...kan det gøres v.h.a en array formel ?
Avatar billede dk_akj Nybegynder
27. januar 2003 - 15:55 #25
Øhh.... gutter/gutinder I skal ikke bøvle med det for min skyld.

//akj
Avatar billede bak Forsker
27. januar 2003 - 15:57 #26
Jo, Jan. Mod min vilje kører jeg nu kun xl2000 :-), men jeg har da xl97 på børnenes maskine derhjemme, hvis jeg har behov for at teste..
Avatar billede janvogt Praktikant
27. januar 2003 - 16:37 #27
Fint, så kan du jo lære dem, hvordan man omvender en tekst i Excel :-)
Avatar billede janvogt Praktikant
27. januar 2003 - 16:38 #28
dk_akj> Vi nørder bare lidt, vist mest for egen skyld .....
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