Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukkethent data fra det foregående ark?

 Besvar Besvar
Forfatter
Othz Se dropdown
Forum Begynder
Forum Begynder
Avatar

Medlem: 30.Okt.2012
Land: danmark
Status: Offline
Point: 15
Direkte link til dette indlæg Emne: hent data fra det foregående ark?
    Sendt: 30.Okt.2012 kl. 10:25
Hej,
hmm, jeg har et lille irriterende problem som jeg håber i kan hjælpe med hvis der findes en løsning på mit spg.

jeg har en masse ark med årstale 2012, 2013, 2014 og så vider
jeg her nogle felter der skal med over i det nye ark fx. fra 2012 til 2013
blandt andet skal jeg have b18 fra 2012, over i ark 2013 i feltet b31
kan det lade sig gøre med en formel pt. bruger jeg denne formel i ark 2013 i felt b31 skriver jeg ='2012'!b18
kan det lade sig gøre sådan
='med en formel som tage et ark bagud'!b18
så jeg ikke skal ændre årstal i alle de nye ark der kommer??


Mange tak, kan i have en god dag!
Mvh.
  Othz

Til top



Til top
swolff Se dropdown
Forum Begynder
Forum Begynder
Avatar

Medlem: 31.Okt.2012
Land: DK
Status: Offline
Point: 6
Direkte link til dette indlæg Sendt: 31.Okt.2012 kl. 15:42
Jeg har lidt det samme problem.
Jeg har 6 ark hvori der er en kolonne med bruger ID nr. alle i kolonne C
Jeg vil gerne lave en sætning hvor jeg kan sammenligne de 6 ark's kolonner C for at se om der er gengangere, men kan ikke få stykket sætningen rigtig sammen.
Jeg ville blive meget glad hvis der var en der kunne hjælpe med formlen.
Der er mellem 78 og 214 rækker i hver ark
Til top
HK Se dropdown
Sølv bruger
Sølv bruger


Medlem: 25.Nov.2010
Land: Danmark
Status: Offline
Point: 860
Direkte link til dette indlæg Sendt: 01.Nov.2012 kl. 17:29
Der er i hvert fald to muligheder, den ene er at bruge nogen af de efterhånden meget gamle xlm-funktioner, den anden er at bruge en VBA-funktion.

xlm- funktioner:
Opret følgende navngivne formler: (Formler, Navnestyring, Nyt)

I feltet Navn skriver: du AllSheets
I feltet Refererer til skriver du: =HENT.PROJEKTMAPPE(1+0*NU())
Tryk OK.

I feltet Navn skriver du: ThisSheet
I feltet Refererer til skriver du: =HENT.CELLE(32+0*NU();INDIREKTE("rc";FALSK))
Tryk OK.

I feltet Navn skriver du: PrevSheet
I feltet refererer til skriver du: =INDEKS(AllSheets;SAMMENLIGN(ThisSheet;AllSheets;0)-1+0*NU())
Tryk OK.

Herefter kan du i en vilkårlig celle i Ark2 bruge:
=INDIREKTE("'"&PrevSheet&"'!"&CELLE("adresse";A2))
for at hente værdien i Ark1!A2

VBA funktion:
Indsæt følgende kode i et almindeligt modul

Function PreviousSheet(Optional rRng As Excel.Range) As Variant
     Dim nIndex As Integer
     If rRng Is Nothing Then Set rRng = Application.Caller
     nIndex = rRng.Parent.Index
     If nIndex > 1 Then
        Set PreviousSheet = Sheets(nIndex - 1).Range(rRng.Address)
     Else
        PreviousSheet = CVErr(xlErrRef)
     End If
   End Function

I en vilkårlig celle i Ark2 indtaster du: =PreviousSheet(A2) for at hente værdien i Ark1!A2.

Hans






Til top
swolff Se dropdown
Forum Begynder
Forum Begynder
Avatar

Medlem: 31.Okt.2012
Land: DK
Status: Offline
Point: 6
Direkte link til dette indlæg Sendt: 01.Nov.2012 kl. 20:55
Citat: HK HK skrev:

Der er i hvert fald to muligheder, den ene er at bruge nogen af de efterhånden meget gamle xlm-funktioner, den anden er at bruge en VBA-funktion.

xlm- funktioner:
Opret følgende navngivne formler: (Formler, Navnestyring, Nyt)

I feltet Navn skriver: du AllSheets
I feltet Refererer til skriver du: =HENT.PROJEKTMAPPE(1+0*NU())
Tryk OK.

I feltet Navn skriver du: ThisSheet
I feltet Refererer til skriver du: =HENT.CELLE(32+0*NU();INDIREKTE("rc";FALSK))
Tryk OK.

I feltet Navn skriver du: PrevSheet
I feltet refererer til skriver du: =INDEKS(AllSheets;SAMMENLIGN(ThisSheet;AllSheets;0)-1+0*NU())
Tryk OK.

Herefter kan du i en vilkårlig celle i Ark2 bruge:
=INDIREKTE("'"&PrevSheet&"'!"&CELLE("adresse";A2))
for at hente værdien i Ark1!A2

VBA funktion:
Indsæt følgende kode i et almindeligt modul

Function PreviousSheet(Optional rRng As Excel.Range) As Variant
     Dim nIndex As Integer
     If rRng Is Nothing Then Set rRng = Application.Caller
     nIndex = rRng.Parent.Index
     If nIndex > 1 Then
        Set PreviousSheet = Sheets(nIndex - 1).Range(rRng.Address)
     Else
        PreviousSheet = CVErr(xlErrRef)
     End If
   End Function

I en vilkårlig celle i Ark2 indtaster du: =PreviousSheet(A2) for at hente værdien i Ark1!A2.

Hans

 

Jeg er meget glad for det Hans skriver.

Men for mig ligner det russisk ;-)
mvh.
Stig
Til top
Othz Se dropdown
Forum Begynder
Forum Begynder
Avatar

Medlem: 30.Okt.2012
Land: danmark
Status: Offline
Point: 15
Direkte link til dette indlæg Sendt: 01.Nov.2012 kl. 22:56

[/QUOTE]
Jeg er meget glad for det Hans skriver.

Men for mig ligner det russisk ;-)
mvh.
Stig
[/QUOTE]

1. Åben excel
2. Tryk -->   Alt - F11
3. op i menu vælger du Insert --> Module
4. Indsæt -->

Function PreviousSheet(Optional rRng As Excel.Range) As Variant
     Dim nIndex As Integer
     If rRng Is Nothing Then Set rRng = Application.Caller
     nIndex = rRng.Parent.Index
     If nIndex > 1 Then
        Set PreviousSheet = Sheets(nIndex - 1).Range(rRng.Address)
     Else
        PreviousSheet = CVErr(xlErrRef)
     End If
   End Function

5. tryk på X for at lukke vinduet
6. vælg et tilfældigt ark (bare ikke det første) (fx ark2)
7. Indsæt i en celle      =PreviousSheet(A2)
8. (A2) udfyldes med den celle du skal have fra foregående side
fx. hvis du skal have A5 fra ark1, over i ark2, i feltet D22 maker du feltet D22, og skriver           =PreviousSheet(A5)

Håber det giver logik

Tusind mange HK det var lige det jeg skulle bruge perfekt
Til top
swolff Se dropdown
Forum Begynder
Forum Begynder
Avatar

Medlem: 31.Okt.2012
Land: DK
Status: Offline
Point: 6
Direkte link til dette indlæg Sendt: 02.Nov.2012 kl. 11:44
Citat: Othz Othz skrev:


Jeg er meget glad for det Hans skriver.

Men for mig ligner det russisk ;-)
mvh.
Stig
[/QUOTE]

1. Åben excel
2. Tryk -->   Alt - F11
3. op i menu vælger du Insert --> Module
4. Indsæt -->

Function PreviousSheet(Optional rRng As Excel.Range) As Variant
     Dim nIndex As Integer
     If rRng Is Nothing Then Set rRng = Application.Caller
     nIndex = rRng.Parent.Index
     If nIndex > 1 Then
        Set PreviousSheet = Sheets(nIndex - 1).Range(rRng.Address)
     Else
        PreviousSheet = CVErr(xlErrRef)
     End If
   End Function

5. tryk på X for at lukke vinduet
6. vælg et tilfældigt ark (bare ikke det første) (fx ark2)
7. Indsæt i en celle      =PreviousSheet(A2)
8. (A2) udfyldes med den celle du skal have fra foregående side
fx. hvis du skal have A5 fra ark1, over i ark2, i feltet D22 maker du feltet D22, og skriver           =PreviousSheet(A5)

Håber det giver logik

Tusind mange HK det var lige det jeg skulle bruge perfekt
[/QUOTE]
Hej Othz
Det virker rigtig fint, men det var bare ikke det jeg søgte.
Det jeg skal bruge er en formel eller en macro der kan sammenligne 6 ark,
hvor der står unike bruger numre i kolonne C i op til 200 rækker.
Formlen eller macroen skal så kunne vise mig om der gengangere i de 6 ark og lave en liste til mig med gengangerne.
Håber det er forståeligt nok. ;-)
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk