[Excel] Macro bevat een fout

Pagina: 1
Acties:
  • 132 views sinds 30-01-2008
  • Reageer

  • vuurfreter
  • Registratie: Juli 2004
  • Laatst online: 27-06-2024
Ik heb bij excel een macro om een nieuwe rij in te voegen. De opmaak van de bovenstaande cel wordt meegenomen. En hij zou alleen de formule die in de laatste cel staat mee moeten kopieren en niet alle gegevens. De macro:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
' NieuweRijInvoegen Macro
' Deze macro voegt vanuit de actieve cel een nieuwe rij in
' en kopieert de oorspronkelijke rij naar de nieuwe rij (alleen
formules)
' de cursor gaat vervolgens naar de derde cel in de nieuwe rij

Sub NieuweRijInvoegen()

       With ActiveCell
            .EntireRow.Select
            .EntireRow.Insert
            .EntireRow.Copy
        End With

        With Selection
            .PasteSpecial Paste:=xlFormulas, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False
   
        End With

        Application.CutCopyMode = False
    
  End Sub


Als ik het bovenste stuk van de macro weglaat kopieert ie alles vanuit de bovenstaande rij. Maar laat ik m erin staan dan krijg ik een foutmelding:

Compileerfout:
Verwacht: expressie

Het woord formules staat rood gekleurd en het haakje achter formules is geselecteerd. Wie kan me helpen dit op te lossen?

  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 26-07 14:57
dat formules moet op de zelfde regel staan als

code:
1
' en kopieert de oorspronkelijke rij naar de nieuwe rij (alleen

dus
code:
1
' en kopieert de oorspronkelijke rij naar de nieuwe rij (alleen formules)


Of je moet er ook een ' voor zetten. De ' geeft aan dat het commentaar is en dat excel/vba daar niks mee moet doen. Nu denkt Excel/vba dat het een statement is wat hij uit moet voeren.

FF voor de duidelijkheid de complete code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
' NieuweRijInvoegen Macro
' Deze macro voegt vanuit de actieve cel een nieuwe rij in
' en kopieert de oorspronkelijke rij naar de nieuwe rij (alleen formules)
' de cursor gaat vervolgens naar de derde cel in de nieuwe rij

Sub NieuweRijInvoegen()

       With ActiveCell
            .EntireRow.Select
            .EntireRow.Insert
            .EntireRow.Copy
        End With

        With Selection
            .PasteSpecial Paste:=xlFormulas, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False
   
        End With

        Application.CutCopyMode = False
    
  End Sub

[ Voor 77% gewijzigd door urk_forever op 23-08-2006 09:04 ]

Hail to the king baby!


  • vuurfreter
  • Registratie: Juli 2004
  • Laatst online: 27-06-2024
Dankjewel nu is de foutmelding weg. Maar nu kopieert ie nog alle gegevens mee en dat is eigenlijk niet de bedoeling. Alleen de formule moet meegekopieerd worden. Hoe los ik dat op?

  • urk_forever
  • Registratie: Juni 2001
  • Laatst online: 26-07 14:57
vuurfreter schreef op woensdag 23 augustus 2006 @ 09:09:
Dankjewel nu is de foutmelding weg. Maar nu kopieert ie nog alle gegevens mee en dat is eigenlijk niet de bedoeling. Alleen de formule moet meegekopieerd worden. Hoe los ik dat op?
Volgens mij kan dat niet. Je kopieert de hele rij dus alle gegevens in die rij zal hij pasten. Dat je aangeeft dat hij de Formules moet pasten geeft aan dat hij de formule paste en niet de uitkomst daarvan, maar hij zal nog steeds de rest van de gegevens pasten.
Wat je kan doen is de Sub zo aanpassen dat hij de cellen die leeg moeten zijn leeg maakt of dat je alleen de opmaak kopieert en de formules doorvoert.

Hail to the king baby!


  • franktv
  • Registratie: Maart 2001
  • Laatst online: 10-05-2025
Ben je hier nog uit gekomen? ik ben zelf met een macro bezig waar een paar rijen gekopieerd moeten worden inclusief de formules, maar ook zonder inhoud. Maar dat wil nog niet echt lukken

  • Reinier
  • Registratie: Februari 2000
  • Laatst online: 10:12

Reinier

\o/

Formules pasten is niet hetzelfde als alleen de formules pasten ;)

Als bekend is in welke cellen formules staan is het misschien het makkelijkst om alleen die cellen te copy-pasten (en evenuteel van de overige cellen nog de opmaak).
Pagina: 1