Variabele bereik voor grafieken

Status
Niet open voor verdere reacties.

Fill123

Gebruiker
Lid geworden
30 mrt 2023
Berichten
7
Hallo,

Ik wil graag uit een hoop data, in een bepaalde kolom gegevens selecteren om zo door vba een grafiek te laten maken.
Ik loop al in het begin vast.
De data die ik wil is telkens vanaf de onderste ingevulde cel van die bepaalde kolom met een bereik naar boven toe dat ik variabel wil kunnen aanpassen.
De gedachte is dat ik zo kan kiezen of ik een grafiek over een week, een maand, 2 maanden,... laat maken.
Als ik de 2 geselecteerde cellen wil verwerken loopt het mis

Tot nu toe heb ik dit :

Code:
Sub Offset_Example()


Dim LRow As Integer
Dim LRow2 As Integer
Dim rng As Range

Worksheets("Data").Activate

LRow2 = Cells(Rows.Count, 2).End(xlUp).offset(-(Worksheets("Blad1").Range("D5").Value), 0).Row

LRow = Cells(Rows.Count, 2).End(xlUp).Row

With ActiveSheet
Set rng = Range(LRow2 & LRow)
End With

rng.Select

End Sub

Kan iemand me hierbij helpen.

Grts, Fill
 
Laatst bewerkt door een moderator:
Dat doet precies wat je wil in jouw voorbeeldbestand.
 
Bij :

Code:
Set rng = Range(LRow2 & LRow)

wordt het bereik niet geselecteerd en krijg ik een foutmelding.
Hoe komt dit?

Ook wil ik graag bepalen welke kolom voor dit bereik wordt gekozen. Kan dit?
 
Laatst bewerkt:
LRow2 en LRow worden beide getallen.
Vertaal dat eens: Range(getal&getal).
Daar komt het van.
 
Als ik in vba elke stap doorloop in debuging dan zie ik voor LRow2 en LRow een getal (van de rij) staan.
Hoe moet ik dit dan aanpakken?
 
Cells(getal,getal)
 
Kan je iets duidelijker zijn?
Ik ben hier niet erg in thuis.
Momenteel krijg ik met LRow en LRow2 de nummer van 2 rijen, namelijk de onderste ingevulde rij en een rij x aantal plaatsen hoger .
Graag wil ik de data van een bepaalde kolom geselecteerd hebben vanaf de onderste rij tot de rij x plaatsen hoger. Als er data onderaan bijkomt ( dit gebeurd elke dag) dan moet dit steeds de onderste rij blijven en de andere rij wil ik kunnen aanpassen naar gelang hoeveel dagen ik terug wil kijken. Deze data wil ik dan weergeven in een grafiek.
 
Het klinkt alsof je de struktuur van je gegevens volledig moet herzien.
Pas de struktuur van je gegevens aan Excel aan.
Gebruik VBA niet om een onjuiste datastruktuur op te lappen.

rijen zijn 'records'
kolommen zijn 'eigenschappen van records'
 
Laatst bewerkt:
Ik kan het onderste bereik bepalen en zo een hele kolom data selecteren en hier een grafiek van maken aan de hand van de formule "verschuiving" in excel zelf.
Het lukt ook om kortere bereiken te maken, alleen is dit niet flexibel genoeg.
Als excel dit kan aan de hand van formules dan moet dit toch ook in vba te doen zijn?
In vba kon ik wel een volledige kolom vanaf de onderste ingevulde rij selecteren en hier een grafiek van maken. Ik kon ook vanaf een bepaalde cel tot de onderste ingevulde cel selecteren en hier een grafiek van maken.
Het probleem is dat dit blijkbaar alleen met cellen (vb : F16) kan en niet met een variabele want vandaag wil ik bv maar 7 cellen omhoog aan data en later 365 cellen.
 
Voor jouw code en idee.
Code:
Set rng = range(cells(Lrow2, 2), cells(Lrow, 2))
 
Ik heb het ondertussen kunnen testen en dit was exact wat ik zocht!
Bedankt!!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan