Avatar billede sf Nybegynder
09. januar 2004 - 13:31 Der er 25 kommentarer og
1 løsning

hent værdi fra andet felt

jeg har et felt med denne værdi:

='H:\DynoPlot\PlotProgram\[141492-DynoPlot4.xls]SAE-Data2'!R$9

Hvordan får jeg værdien fra et andet felt ind istedet for  141492?
09. januar 2004 - 13:36 #1
PROGRAMSTI:  'H:\DynoPlot\PlotProgram\
FILNAVN  :  [141492-DynoPlot4.xls]
ARKNAVN  :  SAE-Data2'!
CELLENAVN :  R$9

Giver det dig nogen logik ?
09. januar 2004 - 13:37 #2
Noter dig, at de små  '  ' omkrænser 'PROGRAMSTI,FILNAVN,ARKNAVN' og at dette afsluttes med  !
Avatar billede sf Nybegynder
09. januar 2004 - 13:39 #3
ja men en del af FILNAVN  skal hentes fra et felt i den fil man er i..
Avatar billede sf Nybegynder
09. januar 2004 - 13:42 #4
??
Avatar billede sf Nybegynder
09. januar 2004 - 13:59 #5
noget i denne stil:
='H:\DynoPlot\PlotProgram\[' & Str($A8) & '-DynoPlot4.xls]SAE-Data2'!R$9
09. januar 2004 - 14:01 #6
Her har du den værdi der kan være 141492 eller en anden:

=INDIRECT("'H:\DynoPlot\PlotProgram\["&A1&"-DynoPlot4.xls]SAE-Data2'!R$9")

Nå INDIRECT eller INDIREKTE bruges til referencer til et eksternt ark, så skal dette ark være åben, når formlen laves ellers fåes #REF
09. januar 2004 - 14:01 #7
jeg har så brugt A1 i stedet for A8
Avatar billede sf Nybegynder
09. januar 2004 - 14:13 #8
hmm sys ikk det holder helt.. alt hvad jeg vil have er at 141492 i stien er fra et andet felt i samme ark og ikke fra noget andet ark som Fx. 'H:\DynoPlot\PlotProgram\[141492-DynoPlot4.xls]
09. januar 2004 - 14:17 #9
141492 er en del af navnet på et andet regneark, og hvis du skifter det ud, så må det være fordi du vil hente noget fra et helt 3. regneark - right ?
09. januar 2004 - 14:18 #10
Hvis jeg har ret, så skal du åbne det 3. regneark, når du laver formlen, og så holder den.
Avatar billede sf Nybegynder
09. januar 2004 - 14:23 #11
nej jeg vil hente det fra det regneark jeg har åben
09. januar 2004 - 14:34 #12
Vi snakker forbi hinanden.
Du skriver at du vil hente et andet tal end 141492 fra celle A8 ind i din formel - det betyder i mit hoved, at du vil hente celle R$9 fra en anden fil, som hvor nummeret på filen er givet i celle A8.
Men det siger du at du ikke vil eller hvad.........
Avatar billede sf Nybegynder
09. januar 2004 - 14:54 #13
ja jeg henter R$9 fra en anden fil mens tallet 141492 skrives manuelt ind i stien dette vil jeg gerne undgå og da tallet allerede står i samme regneark bare et par kolonner længere fremme vil jeg hente det derfra og sætte det ind i stien hvor fra jeg vil hente R$9
Avatar billede sf Nybegynder
09. januar 2004 - 14:55 #14
nej du har forstået det rigtigt..
09. januar 2004 - 14:58 #15
Godt så - skal du bruge den formel, som jeg har skrevet!!!!

Åben den anden fil, hvis tal du skriver i celle A8. Når filen er åben laver du INDIRECT eller på dansk INDIREKTE som vist.
Avatar billede sf Nybegynder
09. januar 2004 - 15:08 #16
kan jeg ikke se noget smart i?? som jeg har det nu åbner jeg ingen fil.

kan du ikke bare sige Hvordan jeg får sat værdien af A8 ind istendet for 141492

i denne Formel:

='H:\DynoPlot\PlotProgram\[141492-DynoPlot4.xls]SAE-Data2'!R$9
09. januar 2004 - 15:09 #17
måske ikke - men det er sådan INDIRECT formlen virker......

Der kan selvfølgelig også laves en makro til det...
Avatar billede sf Nybegynder
09. januar 2004 - 15:13 #18
ja men du kan ikk svare på dette:

kan du ikke bare sige Hvordan jeg får sat værdien af A8 ind istendet for 141492

i denne Formel:

='H:\DynoPlot\PlotProgram\[141492-DynoPlot4.xls]SAE-Data2'!R$9 ?????
09. januar 2004 - 15:14 #19
Det gør du med INDIRECT........
09. januar 2004 - 15:15 #20
INDIRECT omdanner en tekststreng til en formel..... og når du vil ændre et tal/en tekst i en formlel, så bliver formlen til en tekststreng....
09. januar 2004 - 15:17 #21
En makro løsning:

Højreklik på fanenbladet for det ark du står på, og indsæt følgende:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A8")) Is Nothing Then
        If Not (Range("A8").Value = "") Then
            Range("A1").FormulaR1C1 = _
                "='H:\DynoPlot\PlotProgram\[" & Range("A8").Value & "-DynoPlot4.xls]SAE-Data2'!R9C[15]"
        End If
    End If
End Sub

Ændre A1 i denne linie """Range("A1").FormulaR1C1 = _""" til den celle, hvor din formel står og prøv så.
Avatar billede jkrons Professor
09. januar 2004 - 17:23 #22
Lige kort:

Du spørger:

"kan du ikke bare sige Hvordan jeg får sat værdien af A8 ind istendet for 141492"

Svaret her er. "Det kan du ikke".

Du kan som Flemming skriver bruge INDIREKTE, men så skal det ark, der indeholder værdien i R9 være åben ellers virker det ikke.

ASlternativt kan du bruge Flemmings makro.
10. januar 2004 - 15:48 #23
jkrons> godt vi er enige der :-) selv om det nok er træls for SF
Avatar billede jkrons Professor
10. januar 2004 - 19:48 #24
:=)
Avatar billede sf Nybegynder
03. februar 2004 - 01:53 #25
Her er det jeg selv mener er det er er svaret som kan det hvis man ændre find til fx Range("A8").Value

matrix = Application.Selection.Formula
matrix_x = Selection.Columns.Count
matrix_y = Selection.Count / matrix_x

onemore:
Do
matrix(y, x) = Replace(matrix(y, x), find, erstat)
y = y + 1
Loop Until y = matrix_y

If matrix_x > x Then
x = x + 1
y = 1
GoTo onemore
End If
Selection.Formula = matrix

Det er hvad jeg mener er svaret..nogle der mener andet?
13. februar 2004 - 10:33 #26
hvis det virker for dig, så er det vel det vigtigste :-)
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