Avatar billede Slettet bruger
23. november 2001 - 10:50 Der er 28 kommentarer og
1 løsning

Excel: Indsæt et regneark i bunden et ark

Jeg har flere regneark med varenumre og priser, som jeg gerne vil samle til et regneark - uden at anvende udklipsholderen - på samme måde som i Word, hvor man kan indsætte en fil i slutningen af et dokument.
Jeg håber I har nogen forslag.
Avatar billede flemmingwulff Nybegynder
23. november 2001 - 10:56 #1
du sætter bare makøren i den celle du vil have filen i og så indsætter du den bare fra fil i billede menuen så sætter den filen der hvor makøren er
23. november 2001 - 10:57 #2
1. Åben begge regneark.
2. Højreklik på fanebladet på det ark, som du gerne vil flytte/kopiere til det andet regneark.
3. Vælg Flyt/Kopier
4. I dialogboksen vælger du det andet filnavn, og sætter V for kopier
23. november 2001 - 11:05 #3
AMH>> du pleger da altid være god for en kommentar...!
Er det da to ark i samme regneark, som du gerne vil samle, og det SKAL gøres pr. makro - eller hvordan ser det ud ?
Avatar billede Slettet bruger
23. november 2001 - 11:08 #4
flemmingwulff:
Jeg får ikke mulighed for at vælge andet en billedfiler på denne måde:

flemmingdahl:
Det er ikke den måde, som jeg efterlyser. Det jeg mente var, at jeg kun vil have det regneark åbent.
Avatar billede Slettet bruger
23. november 2001 - 11:12 #5
flemmingdahl:
mht. kommentar - ja så sidder jeg jo og bliver ældre og dermed langsommere.
Det jeg efterlyser er således:
Jeg har FIL 1 åben, og i bunden af denne fil vil jeg gerne indsætte FIL 2 + FIL 4 + FIL 7.
Da jeg tænker på at stykke en individuel prisliste sammen.
\\\\AMH
23. november 2001 - 11:14 #6
Man kan jo også gøre det mere besværligt end nødvendigt :-)

Jeg ville lave en makro, som hentede oplysnigerne fra det lukkede ark.

Du kan godt selv :-) Åben begge ark, og lav en formel, som henter data fra det ark, som skal være lukket. Luk det \"lukkede\" ark igen.
Start makrobåndoptageren, og tryk F2 Enter på din formel - Stop
Lur din formel, og lav noget ForNext eller ForEachNext - kopier alle indsate formler, og indsæt dem som værdier efterfølgende.
23. november 2001 - 11:15 #7
Lav et par knapper, som ændre filnavnet på den formel du sætter ind, så det bliver Fil 2 eller Fil 4 .....
Avatar billede Slettet bruger
23. november 2001 - 11:21 #8
Flemming:  Jeg er vist ikke så meget inde i VBA i Execl. Jeg vil indsætte en hel FIL, hver gang - 1 varenummer pr. FIL, vil det gøre det nemmere.
\\\\AMH
23. november 2001 - 11:26 #9
ForNext eller ForEachNext lykken vil jo snuppe alle linier = hel fil. Den alternative \"point\" konto vil godt kunne lave det! :-)
Avatar billede Slettet bruger
23. november 2001 - 11:30 #10
Den alternative \"point\" konto - uddyb venlist - gerne med evt. pris.
\\\\AMH
23. november 2001 - 11:44 #11
Mail sendt direkte - måske en private email ?
Avatar billede Slettet bruger
23. november 2001 - 12:02 #12
privat email afsendt
Avatar billede janvogt Praktikant
23. november 2001 - 12:09 #13
Indsætte en hel fil i en hel fil???
Mener du ikke indsætte et ark i filen - uden at åbne den fil, hvor arket ligger i?
Avatar billede Slettet bruger
23. november 2001 - 12:45 #14
Jo, jeg mener indsætte et helt ark, uden at åbne det, i det regneark som jeg har åbnet.
Avatar billede bak Forsker
23. november 2001 - 13:09 #15
Denne makro henter data i andre filer:
Forudsætninger:
den fil du har åben skal indeholde et ark der hedder links, hvor kol. a indeholder sti og navn på de filer der skal sættes ind.
I B1 skal der stå antallet af filer.
Den skal også indeholde et ark der hedder dataliste. (der hvor data skal ind)

Option Base 1
Sub Hent_Data1()
Dim Fil(15)
DetteArk = ThisWorkbook.Name
t = ThisWorkbook.Sheets(\"Links\").[b1].Value
For x = 1 To t                                  \'hent filer og dataområder fra sheet4
    Fil(x) = ThisWorkbook.Sheets(\"Links\").Range(\"A\" & x).Value
Next x
FirstTime = True                                \'første kørsel af loop
Application.ScreenUpdating = False              \'slå skærmopdatering fra
Application.Calculation = xlCalculationManual  \'slå automatisk genberegning fra
Firstrow = \"2:2\"
For x = 1 To t                                  \'åbn de 4 filer en for en i
    Workbooks.Open FileName:=Fil(x), ReadOnly:=True
    fname = ActiveWorkbook.Name
    ActiveWorkbook.Sheets(1).Activate
    lastrow = Range(\"A65536\").End(xlUp).Row
    If lastrow < 1 Then GoTo IngenData
    Range(Firstrow, lastrow & \":\" & lastrow).Copy
    ThisWorkbook.Sheets(\"Dataliste\").Activate                  \'skift til denne fil
    If FirstTime = True Then
        start = \"$a$2\"
        Range(start).Activate                          \'første gang kopieres til a1
        FirstTime = False
    End If
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False                \'indsæt værdier
    slut = Range(\"A65536\").End(xlUp).Offset(1, 0).Address
    start = slut
    Range(slut).Select
    Application.CutCopyMode = False            \'slå kopier fra
IngenData:
    Workbooks(fname).Close SaveChanges:=False  \'luk aktuel fil
Next x                                          \'fat næste fil

    Application.Calculation = xlAutomatic      \'slå automatisk beregning til igen
    Application.ScreenUpdating = True          \'slå skærmopdatering til igen
End Sub

23. november 2001 - 13:12 #16
bak>> den åbner jo også filen...det kan tage en del tid, hvis arket er stort. Det kan laves uden Open...
Avatar billede bak Forsker
23. november 2001 - 13:16 #17
Jeg har læst det som at AMH ikke selv ville sidde og åbne.
Avatar billede Slettet bruger
23. november 2001 - 13:20 #18
bak:
det er ikke altid de samme ark, som skal indsætte i det åbne ark.
Jeg forestiller mig, at hver ark er lig med et varenummer.
I det åbne ark, indsættes forskellige varenumre (ark) alt efter hvad det er, som kunden skal have en prisliste på.
Avatar billede Slettet bruger
23. november 2001 - 13:22 #19
jeg har ikke brug for at åbne det ark som skal indsættes, da jeg i forvejen ved hvad det indeholder pga. arket er lig med et varenummer
Avatar billede bak Forsker
23. november 2001 - 13:39 #20
Min makro åbner godt nok arket, men kun for den tid det tager at hente data, derefter lukkes den automatisk igen.
Avatar billede bak Forsker
23. november 2001 - 13:43 #21
Hvis du gir din emailadr sender jeg lige et eksempel der virker som du har beskrevet overfor
Avatar billede Slettet bruger
23. november 2001 - 13:45 #22
ser frem til at høre fra dig. min email er:
amh@sw.dk
Avatar billede lillehans Nybegynder
25. november 2001 - 20:16 #23
Jeg venter på svar,  og venter og venter og ....
Avatar billede Slettet bruger
26. november 2001 - 08:45 #24
lillehans>>>>
vente og vente og vente. Hvad med selv at komme med et bud på hvordan dette løses!
Indtil videre er det ikke lykkes.
\\\\AMH
Avatar billede janvogt Praktikant
26. november 2001 - 09:01 #25
Har du ikke mulighed for at strukturere dine data anderledes?
F.eks. kunne du have én stor database med varenumre/priser.
Denne database skulle indeholde et felt, som beskriver hvilke kunder der skal have hvilke varer med på deres prisliste.

På denne måde ville det være nemmere at vedligeholde din prisliste (fordi den kun ligger ét sted) og samtidig ville det være nemt at lave en søgning i databasen ud fra kundenummeret, hvor man så kun ville få de kundespecifikke varer med på listen.

Håber du kan følge mig .....
Avatar billede janvogt Praktikant
26. november 2001 - 09:05 #26
Samme princip har jeg før brugt i en kassebog, hvor man har en lang række posteringer på forskellige konti.
Når man så skal lave et kontoudtog på en specifik konto, oprettes et ark med kun de posteringer(rækker), som f.eks. indeholder kontonummer 4320.
Avatar billede Slettet bruger
26. november 2001 - 09:30 #27
jan>>
MEN så er det store spørgmål, hvad sker der, når/hvis en vare slettes eller ændres - så forsvinder historikken - og det er ikke hensigtsmæssigt da der er tale om tilbud, som måske skal tages frem igen på et senere tidspunkt.

Avatar billede bak Forsker
26. november 2001 - 09:45 #28
Denne kode placeres i arket eget modul. Filstien som skal bruges placeres i M2.
En ændring i kol. A vil få makroen til at slå op i det regneark der skrives i kolonnen, kopiere indholdet af de specifikke celler og indsætte dem som værdier, således at der er historik.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim rcolumn As Range
Set rcolumn = Range(\"A:A\")
If IsEmpty(Target.Value) Then Exit Sub
If IsArray(Target.Value) Then Exit Sub
If Not Intersect(Target, rcolumn) Is Nothing Then
Filnavn = Target.Value & \".xls\"
sti = [m2]
arknavn = \"Ark1\"
celle = Array(\"A5\", \"B5\", \"C5\", \"D5\") \' celler at kigge på i andet ark

For x = 0 To UBound(celle)
  Target.Offset(rowOffset:=0, columnOffset:=x + 1) = \"=\'\" & sti & \"\\[\" & Filnavn & \"]\" & arknavn & \"\'!\" & celle(x)
Next x
Range(Target.Offset(0, 1), Target.Offset(0, 6)).Copy \' kan udvides eller indskrænkes
Target.Offset(0, 1).Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.CutCopyMode = False
End If
End Sub
Avatar billede Slettet bruger
26. november 2001 - 09:50 #29
Tak for indsatsen.
For god ordens skyld vil jeg lige gøre opmærksom på, at min e-mail adresse ikke kan bruges efter den 28. november 2001.
\\\\AMH
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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