Avatar billede klapiolsen Nybegynder
15. august 2007 - 21:08 Der er 4 kommentarer og
1 løsning

kan jeg gemme en fil med et nyt navn -og få makroreferencer med?

Den lille makro herunder ligger i den (skrivebeskyttede)fil RBQ.xls
-makroen snupper en kolonne med priser fra en anden fil (som nødvendigvis skal være på c-drevet for det virker) og smækker denne kollonne ind i arket RBQ.xsl
-sagen er at jeg når jeg nødvendigvis gemmer RBQ.xsl-filen under et andet navn, og åbner denne nye, refererer makroen stadig til RBQ.xsl og ikke filens nye navn -hvordan kan jeg få makroen til altid at referere til den fil den er inkluderet i?

Sub Buying()
    Workbooks.Open Filename:="C:\rio\MacroPrice.xls"
    Range("A1:A100").Select
    Selection.Copy
*** Windows("RBQ.xls").Activate *** -(navnet her skal ændre sig)
    Sheets("Prices").Select
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False (meget af det her er sikkert unødvendigt?)
 
osv..
Avatar billede kabbak Professor
15. august 2007 - 21:58 #1
Sub Buying()
Navn = thisWorkbook.name
    Workbooks.Open Filename:="C:\rio\MacroPrice.xls"
    Range("A1:A100").Select
    Selection.Copy
*** Windows(Navn".xls").Activate *** -(navnet her skal ændre sig)
    Sheets("Prices").Select
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False (meget af det her er sikkert unødvendigt?)
Avatar billede kabbak Professor
15. august 2007 - 21:59 #2
Lidt for hurtig

Sub Buying()
Navn = thisWorkbook.name
    Workbooks.Open Filename:="C:\rio\MacroPrice.xls"
    Range("A1:A100").Select
    Selection.Copy
*** Windows(Navn & ".xls").Activate *** -(navnet her skal ændre sig)
    Sheets("Prices").Select
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False (meget af det her er sikkert unødvendigt?)
Avatar billede kabbak Professor
15. august 2007 - 22:29 #3
Man kan også gøre sådan

Sub Buying()
    Workbooks.Open Filename:="C:\rio\MacroPrice.xls"
    Range("A1:A100").Select
    Selection.Copy
*** Windows(thisWorkbook.name &".xls").Activate *** -(navnet her skal ændre sig)
    Sheets("Prices").Select
    Range("A1").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False (meget af det her er sikkert unødvendigt?)
Avatar billede klapiolsen Nybegynder
16. august 2007 - 12:46 #4
Sub Buying()
hejsa -mange tak for hjælpen -jeg brugte det til inspiration og videre søgning til nedenståede. -men smid et svar hvis du vil have pointene :)


Dim varRBQ As String

    varRBQ = ActiveWorkbook.Name
    Workbooks.Open Filename:="C:\rio\MacroPrice.xls"
    Range("A1:A100").Select
    Selection.Copy
    Windows(varRBQ).Activate
Avatar billede kabbak Professor
16. august 2007 - 14:56 #5
et svar ;-))
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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