Avatar billede Zahra Nybegynder
12. oktober 2010 - 16:12 Der er 9 kommentarer og
1 løsning

Kopiering af en enkelt kolonne

Hej,

Jeg ved ikke hvorfor det ikke virker, men jeg prøver at kopiere en kolonne fra fil X, sheet 2, celle B6 og ned (Jeg ved ikke hvor lang kolonnen er) over til fil Y på sheet 1, celle A5.


Indtil videre har jeg dette:

Option Explicit
Sub CopySheet()

Dim Wkb1 As Workbook
Dim Wkb2 As Workbook

'set the workbook you are copying to as active and give it a name for reference
Set Wkb1 = ActiveWorkbook

' open the workbook you are copying from and activate it
Set Wkb2 = Workbooks.Open(Filename:="C:\Users\zaj\Desktop\KEFREN")
Wkb2.Activate

' copy sheet across sheet number 1, 2 and so on!! *
Worksheets(2).Range("B5").End(xlDown).Copy

'Copying to destination
Destination:=Wkb1.Worksheets(1).Range("A5")

End Sub

Det virker bare ikke. Den kopierer fra sheet 1 (hvor det bør være suide 2) og kun en enkelt celle?
Avatar billede supertekst Ekspert
12. oktober 2010 - 17:04 #1
Lidt justering:

Sub CopySheet()

Dim Wkb1 As Workbook
Dim Wkb2 As Workbook

'set the workbook you are copying to as active and give it a name for reference
Set Wkb1 = ActiveWorkbook

' open the workbook you are copying from and activate it
Set Wkb2 = Workbooks.Open(Filename:="C:\master.xls")
Wkb2.Activate

' copy sheet across sheet number 1, 2 and so on!! *
Worksheets(2).Range("B5").Select
ActiveSheet.Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
Selection.Copy

'Copying to destination
Wkb1.Activate
Worksheets(1).Range("A5").Select
ActiveSheet.Paste

End Sub
Avatar billede supertekst Ekspert
12. oktober 2010 - 17:06 #2
Du skal lige justere filnavnet, der kopieres fra...

Og så velkommen til!
Avatar billede Zahra Nybegynder
13. oktober 2010 - 09:51 #3
Den åbner filen der kopieres fra normalt, men problemet opstår når der bliver kopieret ind i det nye fil. Den kopierer fra en forkert sheet, nemlig fra sheet 1, selvom jeg har skrevet worksheets(2).

Og så kopierer den kun en enkelt celle og ikke en hel kolonne?

Har du evt en anden kode som virker?

Den er jo simpel og burde kunne opskrives meget let.


Mange tak for velkomsten! =D
Avatar billede supertekst Ekspert
13. oktober 2010 - 10:11 #4
Har du afprøvet den VBA-koden under #1?
Avatar billede Zahra Nybegynder
13. oktober 2010 - 12:51 #5
Ja da,

Den gør som jeg skrev: kopierer fra den forkerte sheet og kopierer kun en enkelt celle.

Jeg vil kopiere hele kolonnen fra sheet 2 over i fil Y, sheet 1, celle A5.
Avatar billede supertekst Ekspert
13. oktober 2010 - 13:02 #6
Prøv at sende dine filer til mig. Så vidt jeg kan se virker det hos mig.

@-adresse under min profil.
Avatar billede supertekst Ekspert
13. oktober 2010 - 19:23 #7
Efter yderligere oplysninger:

Sub CopySheet_Supertekst()

Dim Wkb1 As Workbook
Dim Wkb2 As Workbook
Dim sidsteRække As Long

'set the workbook you are copying to as active and give it a name for reference
Set Wkb1 = ActiveWorkbook

' open the workbook you are copying from and activate it
Set Wkb2 = Workbooks.Open(Filename:="C:\Documents and Settings\pb.KHNBPB\Skrivebord\KopiXls\Fil X.xlsx")
Wkb2.Activate

sidsteRække = ActiveCell.SpecialCells(xlLastCell).Row

' copy sheet across sheet number 1, 2 and so on!! *
Worksheets(2).Range("B5:B" & sidsteRække).Select

Selection.Copy

'Copying to destination
Wkb1.Activate
Worksheets(1).Range("A5").Select
ActiveSheet.Paste

End Sub
Avatar billede Zahra Nybegynder
20. oktober 2010 - 13:58 #8
Tak for svaret. Håber jeg giver points på den rigtige måde.
Avatar billede supertekst Ekspert
20. oktober 2010 - 14:05 #9
Ja tak - de er landet..
Avatar billede Zahra Nybegynder
20. oktober 2010 - 14:47 #10
Super, undskyld ventetiden!
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