• 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 voor diverse sheets

Status
Niet open voor verdere reacties.

mimi68

Gebruiker
Lid geworden
11 jun 2008
Berichten
68
beste leden,

is het mogelijk om een macro te maken die van verschillende sheet de informatie kan kopieren naar een standaardsheet?
het probleem is als ik de macro opneem dat het een harde verwijzing wordt.
Selection.AutoFilter
ActiveSheet.Range("$A$9:$K$66").AutoFilter Field:=2, Criteria1:="<>"
Range("A15:B15").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("orderinvoer 2011.xlsx").Activate
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A1:B9").Select
Windows("1101 orderform v4_1 (3).xls").Activate
Application.CutCopyMode = False
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
ActiveWindow.Close
Range("A1").Select
Selection.End(xlDown).Select
End Sub
 
Wat is het probleem met de harde verwijzing?
Wil je dat je vanuit een selectie op het ene blad alles kopiëert naar andere bladen?

mvg,
berre51
 
Berre51,
dit betreft bestellijsten van klanten.
de verwijzing is iedere keer anders.
soms 10 regels soms 80 regels.
vandaar dat de harde verwijzing niet werkt.
alvast bedankt voor je inzet.
gr Mimi
 
Met deze subroutine kan je een willekeurige selectie kopiëren en plakken.
Op de juiste plaats implementeren in bestaande subroutine of uitvoeren via knop op sheet of via Alt+F8.

mvg,
berre51

Sub selectie_kopiëren()
'eerst selectie maken!
Selection.Copy
Sheets("Blad2").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub
 
deze doet het wel maar de bedoeling is om alle lege regels die ertussen staan niet mee te kopieren.
vandaar dat ik de autofilter gebruikte.
maar wellicht kan er nu een sorteerfuntie achter gezet worden?
 
Ik denk niet kan je een niet aaneengesloten selectie kunt kopiëren met deze subroutine.
De sorteerfunctie kan je uitvoeren na de selectie maar dan wel op het kopie. Je zal misschien wat moeten sleutelen aan de vba-code.

mvg,
berre51
 
Met onderstaande code wordt een filter aangebracht op de 9e rij in elk van de werkbladen. Het maakt niet uit hoeveel werkbladen er in het bestand zitten en hoe ze heten.
Vervolgens wordt vanaf rij 15(?) alle zichtbare rijen in het orderinvoer bestand geplaatst.

Code:
Sub Wegschrijven()
Dim WS As Worksheet
    For Each WS In Worksheets
        WS.Range("$A$9:$K$100").AutoFilter Field:=2, Criteria1:="<>"
        With Workbooks("orderinvoer 2011.xlsx").Worksheets(1).Range("A" & Rows.Count)
            WS.Range("A15:B100").SpecialCells(xlCellTypeVisible).Copy .End(xlUp).Offset(1, 0)
            Application.CutCopyMode = False
            ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
        End With
    Next
End Sub

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan