06. november 2007 - 13:19Der er
17 kommentarer og 1 løsning
Fjerne kæder
Hejsa
Jeg har en skabelon med en masse afstemningsark i.
Jeg gemmer denne skabelon under hvert projekt jeg har (som xls-fil).
Men jeg opdaterer løbende denne originale skabelon... ændrer formler opstilling, tilføjer ark m.v.
Hvis jeg nu vil kopiere dem over i min xls-fil så bibeholder den kæden til den originale skabelon indtil jeg går i Rediger - Kæder og ændrer kilden til min xls-fil.
Kan man ikke undgå dette med at den bibeholder kæden ? Det eneste der er at oplysninger om projektnavn og årstal hentes automatisk fra et stamdataark til alle andre ark.
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Er ikke helt 100 på hvad du vil, men der findes en option under Links der hedder Break links, som laver de hidtidige links om til values - kunne det være det? Hilsen Luffe
Næ - det tror jeg ikke det er .. ved anden gennemlæsning: Hvis du har et sheet olddata.xls der har et link til oldstamdata.xls, så ville jeg, istedet for at kopiere til et nyt sheet, åbne begge disse sheet, tage en file - save as til newstamdata.xls og en file save as til newdata.xls. Så vil newdata.xls linke korrekt til newstamdata.xls. Først herefter vil jeg redigere i newdata.xls til mit nye projekt. Var det en mulighed? / Luffe
Jeg er ikke sikkert på at jeg forstår din kommentar 13:33:06
Man kan sige:
1. Jeg har en Excel-fil (arbejdsfil.xls) som oprindeligt er en kopi af skabelon.xlt 2. Denne arbejdsfil.xls vil jeg fortsætte med at arbejde videre på 3. Men nu har jeg tilføjet et ark i skabelon.xlt som jeg skal bruge i arbejdsfil.xls 4. Jeg højreklikker på arket - vælger kopier til arbejdsfil.xls 5. Desværre bibeholder den referencen/kæden i toppen af dette ark til skabelon.xlt(stamdataark) 6.Den skal i stedet lave referencen til arbejdsfil.xls(stamdataark)
Men det skal foregå meget nemt så jeg/andre brugere egentlig ikke skal tænke over det. Helst automatisk.
Jeg tror jeg forstår nu. Hvis du kopierer både dit nye ark fra skabelon og dit stamdataark fra skabelon over samtidig, så linker den korrekt til arbejdsfil.xls. Men det er måske ikke muligt p.g.a. et ændret stamdata ark?
Ellers kan en find / replace bruges - find [skabelon] - replace with ingenting. Lidt det samme som rediger - kæder, men måske mere spiseligt for en bruger? Eller som input til en kode.
Lige en ide til: Hvis det er dig der styrer skabelon, kunne det så lade sig gøre at du linker det ny ark i skabelon til stamdata i arbejdsfil.xls istedet for? Så vil kopieringen fungere og beholde linket til arbejdsfil.xls.
VBA er jeg ikke kompetent nok til, men det må da kunne lade sig gøre uden de store krumspring.
Her er en kode til lidt af det, jeg skal lige ud og køre, når jeg kommer tilbage skal jeg prøve finde ud af hvordan vi får koden til at køre automatisk
Public Sub FindLink()
alinks = ActiveWorkbook.LinkSources(xlExcelLinks) If Not IsEmpty(alinks) Then For i = 1 To UBound(alinks) ActiveWorkbook.ChangeLink alinks(i), ActiveWorkbook.Name, xlExcelLinks
Det har den ulempe at det skal ligge i arbejdes filen, under thisworkbook
Private Sub Workbook_Activate() Call ChangesLink End Sub
Public Sub ChangesLink()
alinks = ActiveWorkbook.LinkSources(xlExcelLinks) If Not IsEmpty(alinks) Then For i = 1 To UBound(alinks) ActiveWorkbook.ChangeLink alinks(i), ActiveWorkbook.Name, xlExcelLinks Next i End If
download Findlink.xla fra http://www.bmsltd.co.uk/MVP/MVPPage.asp Installer den. Når den er installeret finder du et ekstra menupunkt under funktioner (find link) Kør den og fjern alle links.
Jeg har ikke testet din makro i kommentar 08:31:17 men kan man lave den i arbejdsfilen således at når man har kopieret et ark derover så aktiveres denne makro ved en handling. Worksheet_activate eller lignende ?
Kommentar 08:37:09. Den har jeg brugt, men den er jo også meget manuel og betyder at brugeen selv skal gøre noget.
Nu har jeg gjort sådan i hvert ark i kildeskabelonen:
Private Sub Worksheet_Activate() alinks = ActiveWorkbook.LinkSources(xlExcelLinks) If Not IsEmpty(alinks) Then For i = 1 To UBound(alinks) ActiveWorkbook.ChangeLink alinks(i), ActiveWorkbook.Name, xlExcelLinks Next i End If End Sub
Så fjerner den automatisk referencen når man har kopieret den til arbejdsfilen.
Kan i se nogle problemer jeg kan løbe ind i. umiddelbart ser det ud til at virke perfekt
Kildearkene kopieres fint til den nye destinationsark og kæderne afbrydes.
Men nogle gange når man så åbner destinationsarket efterfølgende så tænker arket i meget lang tid. De kæder der blev afbrudt står der "0" ved imens.
Men efter 2 minutter virker arket igen.
Hvorfor nu det ?
Synes godt om
Ny brugerNybegynder
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.