Avatar billede yxos Nybegynder
04. februar 2014 - 10:03 Der er 3 kommentarer og
1 løsning

Select Method of Range Class Failed: Runtime Error "1004"

Jeg har indspillet en macro som virker, men når jeg prøver at putte den dannede kode ind i en knap, så virker det ikke, og jeg får "Select Method of Range Class Failed: Runtime Error "1004"".

Jeg har googlet mig frem til, at jeg har problemer med min .Select, men jeg kan ikke finde ud af, at lave det rigtigt.

Min kode skal kort fortalt gøre opdatere et ark med indholdet fra en XMLfil, sådan at man ved tryp på en knap kan få det gjort automatisk.

Min kode ser sådan ud, og den fejler allerede i linie 2; Cells.Select:

[code]Private Sub CommandButton2_Click()
'Ryd nuværende indhold i arket "Stregkodedump Gældende":
    Sheets("Stregkodedump Gældende").Select
    Cells.Select
    Selection.ClearContents
    Range("A1").Select
'Åbn den XML fil, der skal kopieres nyt indhold fra, og kopier alle celler:
    Workbooks.Open Filename:= _
        "\\servername\STREGKODER\STREGKODER.XML"
    Cells.Select
    Selection.Copy
'Gå tilbage til den første Excel, og Paste ind:
    Windows("TEST Stregkodedump.xls").Activate
    ActiveSheet.Paste
'Luk XML filen igen:
    Windows("STREGKODER.XML").Activate
    Application.CutCopyMode = False
    ActiveWindow.Close
'Indsæt dato for opdatering i ark "Opslag" i celle J1:
    Sheets("Opslag").Select
    Range("J1").Select
    ActiveCell.FormulaR1C1 = "=NOW()"
    Range("J1").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
'Gem filen:
    ActiveWorkbook.Save
'Positioner i A2 i det aktive ark; "Opslag":
    Range("A2").Select
End Sub[/code]
Avatar billede kabbak Professor
04. februar 2014 - 12:54 #1
Du har koden i et ark, den kan ikke virke på andre ark, den skal i et modul og så kaldes fra knappen

Private Sub CommandButton2_Click()
Call Test
end sub


Private Sub Test()
'Ryd nuværende indhold i arket "Stregkodedump Gældende":
    Sheets("Stregkodedump Gældende").Select
    Cells.Select
    Selection.ClearContents
    Range("A1").Select
'Åbn den XML fil, der skal kopieres nyt indhold fra, og kopier alle celler:
    Workbooks.Open Filename:= _
        "\\servername\STREGKODER\STREGKODER.XML"
    Cells.Select
    Selection.Copy
'Gå tilbage til den første Excel, og Paste ind:
    Windows("TEST Stregkodedump.xls").Activate
    ActiveSheet.Paste
'Luk XML filen igen:
    Windows("STREGKODER.XML").Activate
    Application.CutCopyMode = False
    ActiveWindow.Close
'Indsæt dato for opdatering i ark "Opslag" i celle J1:
    Sheets("Opslag").Select
    Range("J1").Select
    ActiveCell.FormulaR1C1 = "=NOW()"
    Range("J1").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
'Gem filen:
    ActiveWorkbook.Save
'Positioner i A2 i det aktive ark; "Opslag":
    Range("A2").Select
End Sub
Avatar billede yxos Nybegynder
04. februar 2014 - 12:56 #2
Det prøver jeg lige...
Avatar billede yxos Nybegynder
04. februar 2014 - 13:11 #3
Det virker sørme. Smid et svar!

Jeg har et ekstra spørgsmål, men det åbner jeg en ny tråd om, så hold lige øje, her de næste 15 minutter... :-)
Avatar billede kabbak Professor
04. februar 2014 - 13:27 #4
;-))
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
Kurser inden for grundlæggende programmering

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