Avatar billede zack Nybegynder
29. januar 2003 - 23:54 Der er 23 kommentarer og
1 løsning

Makro

Jeg vil gerne have en makro, der henter data fra et underliggende regneark.

Eksempelvis hvis jeg indsætter værdien "468" i en kolonne, og sætter makroen igang, så henter den alle dataene fra regnearket 468.

Hvorledes gøres dette?
30. januar 2003 - 00:07 #1
Er "468" navnet på et ark i den aktive projektmappe?
30. januar 2003 - 00:24 #2
En lille hurtig en, hvor du skriver arknavnet i celle A1, og alt indholdet fra det ark kopieres ind startende fra celle A3:

Public Sub CopyAllDataFromXXsheet()
    Dim wksActive As Worksheet
    Set wksActive = ActiveSheet
    Worksheets(wksActive.Range("A1").Value).UsedRange.Copy
    wksActive.Range("A3").PasteSpecial xlPasteValues
    Set wksActive = Nothing
End Sub
Avatar billede zack Nybegynder
30. januar 2003 - 00:38 #3
468 er navnet på en seperat projektmappe.
Mht. det du skriver flemmingdahl.. skal der ikke være en sti?
30. januar 2003 - 08:10 #4
når '468' er en seperat projektmappe, så virker min kode ikke. Virker hvor der hentes fra et andet regneark i projektmappen.
Avatar billede zack Nybegynder
30. januar 2003 - 12:23 #5
Det kan måske ikke lade sig gøre?
30. januar 2003 - 12:31 #6
jojo - men jeg har bare ikke lige tid til det lige nu.
Avatar billede zack Nybegynder
30. januar 2003 - 12:52 #7
okay.... vi må kigge på det senere... jeg er villig til at give flere points, hvis 30 er for lidt.
30. januar 2003 - 13:02 #8
point er underordnet for mig - prøv at klikke på mit navn en gang og se points!
Avatar billede Slettet bruger
31. januar 2003 - 13:41 #9
zack >> Hvad er fordelen ved det du beskriver ? Er det ikke nemmere bare at åbne den mappe du gerne vil have fat i ?

Du kunne prøve at lege lidt med hyperlinks til de ark du ønsker. Det tror jeg vil virkse næsten lige så godt som det du beskriver.
Avatar billede zack Nybegynder
31. januar 2003 - 13:54 #10
Det er fordi, nogen ønsker det...

Det vedkommende gerne vil hav er, at han har en projektmappe med diverse beregninger. Her ønsker han at kunne kopiere dataene fra forskellige modeller over i en af de arkene i projektmappen. Herefter kan han beregne, på de kopierede data.

Herved er han fri for at lave kopieren det selv.

Det kan sikkert gøres smartere... men nogen er vanefolk, og her skal man ikke ændre for meget...
Avatar billede zack Nybegynder
31. januar 2003 - 14:02 #11
Her er min foreløbelige:

Sub Hent()
'
' Hent Makro
' Makro indspillet 30-01-2003 af Lars
'
' Genvejstast:Ctrl+a
'
    Workbooks.Open FileName:="\\FS1\DATA\EM\Kalkulationer\Kalk 2003\469.xls", _
        UpdateLinks:=3
    Sheets("Ark1").Select
    Range("A1:K58").Select
    Selection.Copy
    ActiveWindow.Close
    ChDir "F:\lars\Dokumenter\Kalkulationer"
    Workbooks.Open FileName:= _
        "\\FS1\DATA\lars\Dokumenter\Kalkulationer\TestKalk.xls"
    Range("B10").Select
    ActiveSheet.Paste
    Range("I25").Select
End Sub
Avatar billede zack Nybegynder
02. februar 2003 - 14:19 #12
Giver jeg for lidt point, siden lysten ikke er til at svare?
Avatar billede bak Forsker
02. februar 2003 - 15:24 #13
En lidt anderledes ide:
Åbn det regneark, der skal have data samt et af de der skal levere data.

-indsæt formeler der henter alle de data der er brug for (=testkalk.xls!A5 og videre i den dur)
-gem og luk dataleveringsark.

det er nu muligt at skifte mellem alle dataleveringsark, bare ved at gå ind under Rediger-Kæder-Skift Kæde.
Avatar billede zack Nybegynder
02. februar 2003 - 16:04 #14
Hmmm...det skal bare helst være så nemt som muligt, og sådan som det er nu (Lotus 1-2-3). Brugeren er nemlig ikke særlig kyndig, og derfor skal det være simpelt.
Avatar billede palle_ib Nybegynder
03. februar 2003 - 08:35 #15
Er dt altid det samme antal rækker og kolonner?
I givet fald ville jeg vælge en ListBox hvor alle arknavnene blev skrevet ind. Evt. med vlookup til arknavn med den fulde sti.
Jeg ville lave formler i stil med Indirect med referance til cellen hvor ListBox´en bliver placeret. På den måde behøver brugeren kun at vælge det ønskede ark for at hente dataene! Hvis eks. ønskes skriv venligst e-mail!
Avatar billede zack Nybegynder
03. februar 2003 - 09:13 #16
jesperknudsen@inet.uni2.dk
Avatar billede zack Nybegynder
03. februar 2003 - 14:01 #17
jeg venter i spænding...
Avatar billede zack Nybegynder
03. februar 2003 - 14:42 #18
Problemet er lig http://www.eksperten.dk/spm/311251

Forskellen er bare, at det er en anden projektmappe der skal hentes.
Avatar billede bak Forsker
03. februar 2003 - 18:06 #19
Zack -> Jeg håber du har fået det løst med dine andre spørgsmål.
Palle ib -> jeg tror det bliver svært med indirekte funktion. Den virker kun på allerede åbne regneark.
Avatar billede zack Nybegynder
03. februar 2003 - 20:26 #20
ja... mit andet spørgsmål har løst problemet...jeg er dog stadig interesseret i at få tilsendt palle_ib's regneark.
Avatar billede palle_ib Nybegynder
04. februar 2003 - 13:03 #21
Er det ikke noget i retning af følgende for at løse problemet:

Private Sub ComboBox1_Change()
  Dim sFil, sArk As String
  sArk = ThisWorkbook.Name
  Range("b1").Select
  sFil = ActiveCell
  Workbooks.Open Filename:=sFil
  Workbooks(sArk).Activate
  Calculate
End Sub
For at få løst Bak´s problem?
Kombineret med en formel ligende:
=INDIRECT(($B$2&"$"&CHAR(COLUMN()+64)&"$"&ROW()-6))
Så skulle det da være muligt!

Jeg har i hvert fald sendt 4 filer til zack, som hvis de palceres i c:\temp kan løse problemet!
Avatar billede palle_ib Nybegynder
04. februar 2003 - 13:04 #22
Ups i B1 bliver filnavnet hentet det er for ikke at skulle arbejde med hele stien i ComboBoxen!
Avatar billede palle_ib Nybegynder
06. februar 2003 - 11:54 #23
Hvad så Zack! Skal der snart betales? Der er vel besvaret?
Avatar billede zack Nybegynder
07. februar 2003 - 13:23 #24
Jo... beklager ventetiden...
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