Helpmij.nl
Helpmij.nl
Helpmij.nl
Steun Helpmij.nl! Klik hier     Computerprobleem? Klik hier!

Quote

Weergeven resultaten 1 tot 4 van 4

Onderwerp: Kopieren van een sheet naar een andere file

  1. #1
    Vraag is opgelost

    Kopieren van een sheet naar een andere file

    Ik wil een sheet uit het ene werkblad kopieren naar een ander werkblad.
    De doelfile moet echter niet 1 specifieke file zijn, maar afhankelijk van iets wat in de tekst van de bronsheet zit.
    Zowel de bron file als de doelfile zijn geopend en ik start de macro vanuit de bronfile.

    Als cel I2 van de bronfile "R.A1128" bevat, moet de doelfile "C:\Users\wka\Desktop\ExcelTest\Nieuwe map\R.A1128.xlsx" zijn


    Ik heb de volgende code:

    Code:
    Sub Sheetkopie1()
    
    Dim path As String
    Dim filename As String
    Dim sheetnaam As String
    Dim doelfile As String
    path = "C:\Users\wka\Desktop\ExcelTest\Nieuwe map\"
    filename = Range("I2")
    sheetnaam = Range("E1")
    doelfile = path & filename & ".xlsx"
    ActiveSheet.Name = sheetnaam
    ActiveSheet.Copy Workbooks(doelfile).Worksheets(1)
    
    End Sub
    Wat doe ik fout?

  2. #2
    Senior Member
    Verenigingslid

    Geregistreerd
    10 november 2016
    Locatie
    Zaandam
    Afstand tot server
    ±116 km
    Wil je kijken of dit werkt?

    Code:
    Sub Sheetkopie1()
    ActiveSheet.Copy Before:=Workbooks(Range("I2") & ".xlsx").Sheets(1)
    ActiveSheet.Name = Range("E1")
    End Sub
    Laatst aangepast door SjonR : 13 september 2017 om 09:31
    Niemand is slim genoeg om zijn eigen domheid te bevatten!

  3. #3
    SjonR

    Het werkt! Bedankt.

    Wat is de reden dat het bij mij niet werkte?
    Omdat beide files al geopend zijn, is het complete pad naar de file niet meer nodig?

  4. #4
    Senior Member
    Verenigingslid

    Geregistreerd
    10 november 2016
    Locatie
    Zaandam
    Afstand tot server
    ±116 km
    Als het al geopend is volstaat de verwijzing naar het bestandsnaam, aangezien er geen twee bestanden met dezelfde naam geopend kunnen zijn.

    In jouw opzet zou dit werken:

    Sub Sheetkopie1()

    Code:
    Dim filename As String
    Dim sheetnaam As String
    
    filename = Range("I2") & ".xlsx"
    sheetnaam = Range("E1")
    ActiveSheet.Copy Before:=Workbooks(filename).Sheets(1)
    ActiveSheet.Name = sheetnaam
    
    End Sub
    Laatst aangepast door SjonR : 13 september 2017 om 11:11
    Niemand is slim genoeg om zijn eigen domheid te bevatten!

Berichtenregels

  • U mag geen nieuwe vragen starten.
  • U mag niet reageren op berichten.
  • U mag geen bijlagen versturen.
  • U mag uw berichten niet bewerken.
  •  
Helpmij.nl
Helpmij.nl

Helpmij.nl en business

Partners
Sponsoren
Aanbiedingen