• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Macro gekoppeld aan knop werkt wel maar als add-in niet

Status
Niet open voor verdere reacties.
Dit werkt bij mij zonder enig probleem:
Code:
Sub VulTemplate()
    Dim awb As Workbook
    Set awb = ActiveWorkbook
    
    With Workbooks.Open("E:\13USB-station\Factuurverificatie\01 Verzamelstaat\Verzamelstaat - Template.xlsm")
        .Sheets("Blad1").Range("A4:O30").Value = awb.Sheets("Blad1").Range("A4:O30").Value
    End With
End Sub

Je moet uiteraard wel in het document van waaruit je wilt kopiëren op het knopje van de addin klikken.
Met F5 of F8 in de addin zal niet goed gaan, dan klopt de verwijzing naar ActiveWorkbook niet.
 
Edmoor,

Fantastisch. Hier werkt deze nu ook. Er wordt dus gekopieerd en geplakt in het doelbestand.
Nu is het nog de bedoeling dat in het doelbestand (verzamelstaat) in de 1ste lege cel in kolom A verder geplakt wordt.

Er is nu al, voor mij althans, een grootte stap gezet.

Edmoor, nogmaals fantastisch.

Mvg
Peter
 
Dat kan allemaal maar moet je wel je documenten er op inrichten.
De laatst gebruikte regel in de template is 603.
Daardoor zal de kopie beginnen op regel 604 en zie je dat niet na een druk op de knop van de addin.

De laatst gebruikte regel in het bron document is 300.
Daardoor zal in dit geval het bereik A4 t/m O300 worden gekopieerd waarvan heel veel cellen leeg zullen zijn.
Ook zullen dan in de verzamelstaat veel formules de melding #NB! geven omdat de brongegevens er dan niet zijn.

Als je dat niet aanpast zal er met een loop de laatst gebruikte regel moeten worden bepaald door de eerste lege cel in kolom A op te zoeken.
Dat is inefficient en traag.

Je kan ook met echte tabellen gaan werken, dat maakt het op dat gebied weer makkelijker en heb je ook geen omkijken naar tot welke regel je formules moet worden doorgetrokken omdat een tabel dit zelf wel regelt.
 
Laatst bewerkt:
Hallo Edmoor

Het is gelukt!!!
Ik heb jouw tip v.w.b. tabellen e.d. ter harte genomen en dus tevens uitgevoerd.
Onderstaande code wordt nu gebruikt in de Add-in..

Code:
Sub VulTemplate()
    Dim awb As Workbook
    Set awb = ActiveWorkbook
    
    With Workbooks.Open("E:\13USB-station\Factuurverificatie\01 Verzamelstaat\Verzamelstaat - Template.xlsx")
        .Sheets("Blad1").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(200, 15) = awb.Sheets("Blad1").Range("A4:O300").Value
        .Close True
        
    End With
End Sub

Nu nog wat puntjes op de i zetten.
Tevens ga ik proberen om nog een Add-in te creëren n.a.v. je vorige tips.

Ik wil je heel hartelijk danken voor je engelen geduld en voor je tips en tricks.
Hierdoor heb ik als digibeet v.w.b. VBA heel veel geleerd.
Nogmaals hartelijk dank voor je kostbare tijd.

Mvg
Peter
 
Graag gedaan en fijn dat het gelukt is :)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan