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

verwijzen naar verwijderde cellen

Status
Niet open voor verdere reacties.

stinio

Nieuwe gebruiker
Lid geworden
30 nov 2015
Berichten
1
Hallo forumleden,

Ik heb eigenlijk twee korte vraagjes,
Is het mogelijk om te verwijzen naar een cel en vervolgens deze cel te verwijderen maar dat het nog wel in de andere cel staat?
Dus bijvoorbeeld in cel A1 zet ik =C2, dan komt wat er in C2 staat ook in A1 maar als ik nu C2 verwijder wordt A1 ook leeg, is het misschien mogelijk om het getal/tekst in A1 vast te zetten en als C2 dan wordt verwijderd, A1 niet naar niks gaat maar hetzelfde blijf?

Ook vraag ik me af of je een cellenbereik kan verplaatsen door middel van een formule,
Ik wil namelijk dat een cellenbereik via een macro naar een bepaalde plek wordt verplaatst, deze plek wil ik dan constant laten varieren met =aselect.
Weet iemand of beide of een van de twee mogelijk is ik heb het namelijk nog niet kunnen vinden.

Hopelijk kan een van jullie me helpen alvast bedankt,
Stijn
 
Hoi Stijn, welkom op het forum.

Je vragen zijn me niet helemaal duidelijk. Bij vraag 1 neem ik aan dat je met verwijderen van C2 bedoelt dat de cel wordt leeg gemaakt?
Zo ja, dan kan het niet direct, maar - als je dan toch met macro's aan de slag gaat - wel met de volgende code bij het werkblad:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    
    If Intersect(Target, Range("C2")) Is Nothing Then Exit Sub
    
    Application.EnableEvents = False
    
    If Range("C2") = "" Then
        Application.Undo
        Range("A1").Value = Range("A1").Value
        Range("C2").Value = ""
        Else
            Range("A1").Formula = "=C2"
    End If
    
    Application.EnableEvents = True
    
End Sub

Let op: als je een heel gebied selecteert met daarin C2 en je drukt op delete, dan wordt de inhoud van de overige cellen weer terug gezet (undo).

Bij vraag 2 neem ik aan dat je het bereik wilt verplaatsen van A naar B, dan van B naar C enzovoorts, dus niet van A naar B, van A naar C enzovoorts.
Dat kan als je het bereik een naam geeft, bijvoorbeeld je selecteert A1:C2 en typt in het naamvak (links van de formulebalk): Bereik<enter>

Vervolgens kun je "Bereik" verplaatsen, bijvoorbeeld de volgende code verplaatst "Bereik" 10x - telkens met ongeveer 1 sec. pauze - naar een locatie beginnend bij ergens tussen D1 en D26:
Code:
Sub VerplaatsBereik()

    Dim i As Integer
    
    For i = 1 To 10:
        Application.Wait (Now + TimeValue("00:00:01"))
        Range("Bereik").Cut Destination:=Range("D" & Round(Rnd() * 25 + 1))
    Next i
    
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan