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

getallenreeks plaatsen op basis van een celwaarde met vba

Status
Niet open voor verdere reacties.

maurizzio78

Gebruiker
Lid geworden
20 dec 2012
Berichten
35
hallo allemaal,

ik wil het volgende doen,

ik wil middels vba in een sheet een oplopende getallenreeks plaatsen die tot een bepaald getal gaat die veranderen kan (waarde staat in een cel).

dus bv op blad3 in cel B1 staat een waarde die telt hoeveel ingeschreven spelers ik heb en op basis van die cel moet dan een getallenreeks
op blad blad2 komen vanaf cel A2 oplopen tot het getal wat in cel B1 op blad3 word weergegeven.
dus bv in cel B1 staat 6 dan wil ik een lijst startend in cel A2 oplopend 1,2,3,4,5,6 tot cel A7 maar als celwaarde B1 veranderd ook de lijst veranderd.

bij voorbaat al dank.

mvg maurizzio labruzzo
 
deze achter blad3:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
    Blad2.Range("A2:A10000").ClearContents
    For i = 1 To [B1]
        Blad2.Cells(i + 1, 1).Value = i
    Next
End If
End Sub
 
deze achter blad3:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
    Blad2.Range("A2:A10000").ClearContents
    For i = 1 To [B1]
        Blad2.Cells(i + 1, 1).Value = i
    Next
End If
End Sub

deze werkt niet als ik hem achter blad 3 plaats, kan het zijn dat ik niet blad 2 en 3 aangeef of dat wat tussen haakjes erachter?
 
zonder voorbeeldbestand is het ook maar gokken voor ons:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
    Sheets("Blad2").Range("A2:A10000").ClearContents
    For i = 1 To [B1]
        Sheets("Blad2").Cells(i + 1, 1).Value = i
    Next
End If
End Sub
 
Laatst bewerkt:
zonder voorbeeldbestand is het ook maar gokken voor ons:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
    Sheets("Blad2").Range("A2:A10000").ClearContents
    For i = 1 To [B1]
        Sheets("Blad2").Cells(i + 1, 1).Value = i
    Next
End If
End Sub

ik zal bestand even aanpassen zodat ik voorbeeld kan plaatsen
 
deze achter blad Engine:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$1" Then
    Sheets("lotingen").Range("A2:A10000").ClearContents
    For i = 1 To [B1]
        Sheets("lotingen").Cells(i + 1, 1).Value = i
    Next
End If
End Sub
 
ik weet niet wat ik fout doe maar als ik hem achter blad engine zet gebeurt er niets als ik een nieuwe inschrijving doe
 
tja, als mijn oma wielen had, dan was ze een fiets. waardoor wordt die formule gevuld dan?

Jouw voorbeeldbestand heeft geen formule in B1..........................
 
Laatst bewerkt:
Zet het in module van Lotingen.

Code:
Private Sub Worksheet_Activate()
 a = Sheets("engine").Range("b1").Value
 Cells(1).CurrentRegion.Columns(1).Offset(1).ClearContents
 Cells(2, 1).Resize(a) = Evaluate("row(1:" & a & ")")
End Sub
 
ja, inderdaad. Dan is het activate event de enige optie.
 
een kloppend voorbeeldbestand is daarom wel fijn, dan heb je zo je oplossing.

fijne avond :)
 
In het bestand van #6 staat de formule in B1 van 'engine' sjon.

Misschien moet je dit nog even toevoegen i.v.m. het legen van "inschrijvingen'.
Code:
[COLOR="#FF0000"]if a > 0 then [/COLOR]Cells(2, 1).Resize(a) = Evaluate("row(1:" & a & ")")
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan