Avatar billede spoi Nybegynder
03. november 2006 - 08:40 Der er 18 kommentarer og
1 løsning

problem med kopiering med makro

Hej jeg har et problem med et billede jeg ikke kan få kopieret med over i en anden fil. Har følgende to knapper med makro. Når jeg benytter den første knap kommer billedet fint med over på de andre ark. dette sker dog ikke når jeg trykker på sidste knap.

Private Sub CommandButton1_Click()
ActiveSheet.Unprotect
Sheets("Ny version").Copy After:=Sheets("Ny version")
  ActiveSheet.Name = "Version" & Sheets("Ny version").Cells(2, 4)


For Each Co In ActiveSheet.OLEObjects
Co.Delete
Next

Sheets("Ny version").Cells(2, 4) = Sheets("Ny version").Cells(2, 4) + 1
    Sheets("Ny version").Activate
    [D6] = [D5]
    [D5] = Date
ActiveSheet.Protect Password:="gizmo"

   
End Sub

Private Sub CommandButton2_Click()
' kode der overfører data til nyeste version til pakkeriet.
'Ret[B10] er den celle jeg har kundenummer i
    Workbooks.Open Filename:="H:\Pakkeinstruktioner\instruktion\" & [B10] & "test.xls"    ' xxxx = kundenr.
    Windows([B10] & "test.xls").Activate
    Sheets("Nyeste version").Activate
    ActiveSheet.Unprotect
    ThisWorkbook.Sheets("NY version").Range("A1:g200").Copy Sheets("Nyeste version").Range("A1")
        ActiveSheet.Protect Password:="123"
    Application.CutCopyMode = False
    ActiveWorkbook.Close savechanges:=True
 
   
End Sub

Nogen der kan hjælpe?

LN
Avatar billede kabbak Professor
03. november 2006 - 10:34 #1
Det er fordi i den første kopierer du hele arket, i den anden er det kun et område, hvor du har valgt celler.
Avatar billede spoi Nybegynder
03. november 2006 - 10:42 #2
Ja jeg er godt klar over det må være noget med det. Men kan ikke få det til at virke på andre måder. vil du hjælpe med lidt kode så den tager hele arket?

LN
Avatar billede kabbak Professor
03. november 2006 - 10:51 #3
Hvor mange ark er der i "H:\Pakkeinstruktioner\instruktion\" & [B10] & "test.xls".

Der skal være mere end 1, ellers kan jeg ikke slette den side der er der
Avatar billede kabbak Professor
03. november 2006 - 11:00 #4
Denne et ikke testet.

Jeg sletter det ark der er der i forvejen og sætter et nyt ind

Private Sub CommandButton2_Click()
' kode der overfører data til nyeste version til pakkeriet.
'Ret[B10] er den celle jeg har kundenummer i
    Workbooks.Open Filename:="H:\Pakkeinstruktioner\instruktion\" & [B10] & "test.xls"    ' xxxx = kundenr.
    Windows([B10] & "test.xls").Activate
   
    Sheets("Nyeste version").Delete
    ThisWorkbook.Sheets("NY version").Copy After:=ActiveSheet
    ActiveSheet.Name = "Nyeste version"
    ActiveWorkbook.Close savechanges:=True

 
End Sub
Avatar billede spoi Nybegynder
03. november 2006 - 11:02 #5
Der er kun et ark

Hmm
Avatar billede spoi Nybegynder
03. november 2006 - 11:13 #6
Satte et nyt ark ind. Men det fungerer ikke helt som ønsket.
For det første vil jeg gerne at første ark i [B10]test.xls, skal være Nyeste version
Desuden kommer alle knapper med over og Ja delen med oplåsning af ark er ikke med

LN
Avatar billede spoi Nybegynder
03. november 2006 - 11:25 #7
hmmm nu går den helt amok og jeg får sådan en windows fejlmeddelse hvor jeg skal sende fejlrapport.
Avatar billede spoi Nybegynder
03. november 2006 - 11:29 #8
Det virker som om det er når jeg har kørt koden, så kan jeg ikke længere gå ind på [B10]test.xls. Der kommer simpelthen den fejlmeddelse hver gang
Avatar billede kabbak Professor
03. november 2006 - 11:38 #9
Ok, har først tid i aften, kan du sende et kopi af den mappe med koden i.

kabbak snabela tiscali dot dk
Avatar billede spoi Nybegynder
03. november 2006 - 11:43 #10
helst ikke. det er jo fortrolig data.

Det første virkede faktisk bedre. Men det dumme billede kom bare ikke med over.

LN
Avatar billede spoi Nybegynder
03. november 2006 - 11:47 #11
jeg kan måske lave et eller andet med nogle fiktive data

Vil prøve
Avatar billede kabbak Professor
03. november 2006 - 12:05 #12
Private Sub CommandButton2_Click()
' kode der overfører data til nyeste version til pakkeriet.
'Ret[B10] er den celle jeg har kundenummer i
    Workbooks.Open Filename:="H:\Pakkeinstruktioner\instruktion\" & [B10] & "test.xls"    ' xxxx = kundenr.
    Windows([B10] & "test.xls").Activate
    Sheets("Nyeste version").Activate
    ActiveSheet.Unprotect
    ThisWorkbook.Sheets("NY version").Range("A1:g200").Copy Sheets("Nyeste version").Range("A1")
   
   
    ThisWorkbook.Sheets("NY version").Shapes("Picture 1").Copy ' ret til navnet på dit billede
    ActiveSheet.Range("G10").Select ' placerer øverste venstre hjørne ved G10, ret til din placering
    ActiveSheet.Paste
   
        ActiveSheet.Protect Password:="123"
    Application.CutCopyMode = False
    ActiveWorkbook.Close savechanges:=True

 
End Sub
Avatar billede spoi Nybegynder
03. november 2006 - 12:20 #13
hmmm dumt spm

Men hvordan finder jeg ud af havd navnet på mit billede er?

Skal billedet sættes ind på en bestemt måde

Dette skal jeg gøre for ca 100 forskellige kunder så navnet på billedet er ej det samme for alle kunder.

LN
Avatar billede spoi Nybegynder
03. november 2006 - 12:30 #14
Ok det med navnet fandt jeg ud af

en af de ændringer der kan ske - og hvorfor jeg skal versionsstyre de forskellige pakkeinstruktioner er at det kan ske at der skal sættes et nyt billede ind. Får dette billede så et nyt navn. Det skal jo helst bibeholde billedet hvis koden skal bruges?

Kunne et alternativ evt være at billedet automatisk kommer ind dvs at i B48 feks kommer billede xxxx.jpg for kunde xxxx

Den hiver i hvert fal billedet med over nu. Tester lige lidt mere.

LN

LN
Avatar billede spoi Nybegynder
06. november 2006 - 06:58 #15
Vil du lægge et svar Kabbak. Det med billedet er en biting

LN
Avatar billede spoi Nybegynder
06. november 2006 - 07:34 #16
Hmm kan se billedet lægger sig som oven i hinanden. dette sker ikke for resten af data. Hmm litd ærgerlig. til at leve med men bedre hvis det ikke bare lagde sig oveni. det ene billede kan jo være større end det andet.

LN
Avatar billede kabbak Professor
06. november 2006 - 10:28 #17
Nu sletter den alle billeder inden kopiering


Private Sub CommandButton2_Click()
' kode der overfører data til nyeste version til pakkeriet.
'Ret[B10] er den celle jeg har kundenummer i
    Workbooks.Open Filename:="H:\Pakkeinstruktioner\instruktion\" & [B10] & "test.xls"    ' xxxx = kundenr.
    Windows([B10] & "test.xls").Activate
    Sheets("Nyeste version").Activate
    ActiveSheet.Unprotect

    For Each pic In Sheets("Nyeste version").Shapes    ' sletter alle billeder i arket
        pic.Delete
    Next

    ThisWorkbook.Sheets("NY version").Range("A1:g200").Copy Sheets("Nyeste version").Range("A1")
    ThisWorkbook.Sheets("NY version").Shapes("Picture 1").Copy    ' ret til navnet på dit billede
    ActiveSheet.Range("G10").Select    ' placerer øverste venstre hjørne ved G10, ret til din placering
    ActiveSheet.Paste
    ActiveSheet.Protect Password:="123"
    Application.CutCopyMode = False
    ActiveWorkbook.Close savechanges:=True

End Sub
Avatar billede spoi Nybegynder
06. november 2006 - 11:27 #18
hmmm nu lagde billedet sig pludselig dobbelt. Prøvede at slette

ThisWorkbook.Sheets("NY version").Shapes("Picture 1").Copy    ' ret til navnet på dit billede
    ActiveSheet.Range("G10").Select    ' placerer øverste venstre hjørne ved G10, ret til din placering
    ActiveSheet.Paste

Og nu fungerer det bare. Bortset fra at billedet lægger sig dobbel. Og jeg skal når jeg sætter et nyt billede ind altid omdøbe det til billede 1. Lidt træls at jeg skal gå og huske på det.

LN
Avatar billede spoi Nybegynder
06. november 2006 - 11:31 #19
Så nu fungere det bare.

super

Tak for hjælpen

LN
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