• 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.

VBA activesheet.calculate kopieren van cellen niet meer mogelijk

Status
Niet open voor verdere reacties.

ginahaisma12

Gebruiker
Lid geworden
22 nov 2017
Berichten
11
Vanwege de grote omvang van een van mijn Excel bestanden heb ik de volgende VBA code toegepast:


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Calculate
End Sub

Deze code zorgt ervoor dat de huidige sheet herberekent op het moment van wijziging van een cel, maar dat niet de gehele werkmap gaat herberekenen. Dit is een zeer goede oplossing voor het snelheidsprobleem van mijn werkmap.

Echter kan ik na toepassen van de bovenstaande code geen cellen meer kopieren en plakken in de sheet. Weet iemand hoe dit kan en hoe dit eventueel kan worden opgelost?
 
Die code doet dat niet bij een wijziging maar als je op een cel anders dan de huidige cel klikt.

Maak er eens dit van:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Application.EnableEvents = False
    ActiveSheet.Calculate
    Application.EnableEvents = True
End Sub
 
Laatst bewerkt:
Bedankt voor je reactie. De code werkt hetzelfde als de vorige, maar helaas kan ik nog steeds geen cel kopieren. Zodra ik de cel kopieer en op de bestemming klik, is de 'kopieerstippellijn' verdwenen.
 
Die code werkt heel anders, al lijkt het hetzelfde.
Je moet natuurlijk wel die andere code verwijderen.
 
Ik bedoelde dat de uitkomst ervan hetzelfde is, maar dat het probleem nog steeds aanwezig is. De andere code heb ik vanzelfsprekend verwijderd.
 
Plaats dan een voorbeeld document en vertel er bij wat je doet dat niet goed gaat.
 
knip edmoor's code in 2 verschillende macros en gebruik eOff net voor je wil kopieren en plakken en eOn daarna (niet vergeten).
Maak er anders een sneltoets aan vast, zodat je snel kan schakelen.
Code:
Sub eOff()
    Application.EnableEvents = False
End Sub

Sub eOn()
    Application.EnableEvents = True
End Sub
 
De code staat in het selectionchange event, maar hoort thuis in het Change event.
Dat gezegd hebbende, ik vind dat je een lapmiddel toepast en dat je je bestand eens aan een kritische blik bloot moet stellen om de langzame calculatie aan te pakken.
 
Ik dacht dat ik dat gedaan had en zie net pas van niet :o
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan