Als MAAND-functie maken voor listbox

Status
Niet open voor verdere reacties.
HSV,

Om tussen B en C een kolom te krijgen in de listbox moet ik een code te veranderen
het heeft te maken met For cw = 1 To Range("A1").Value - 2, maar ik heb een aantal
wijzigingen geprobeerd, maar ik krijg hem niet aan de praat

Deel van de procedure :

rw = 3
c0 = "20;35"

For cw = 1 To Range("A1").Value - 2
c0 = c0 & ";" & 40
Next


With ListBox1
.Clear
.ColumnCount = Range("A1").Value
.ColumnWidths = c0

Kan je me aangeven wat er gewijzigd moet worden

bvd

Offthefield
 
Verander ook het bereik (d2:J2) in de formule van cel A1.

Code:
Private Sub Userform_Initialize()

Sheets("VERTICAAL2").Select

' Beginregel rw = row
  rw = 3
  c0 = "15;30;40"
    For cw = 1 To Range("A1").Value - 3
        c0 = c0 & ";" & 40
    Next
    With ListBox1
        .Clear
        .ColumnCount = Range("A1").Value
        .ColumnWidths = c0
   
    
        
' Bepalen van de kolommen 1 en 2
    For i = 0 To 4
    For j = 0 To 2
    
     .AddItem
     .List(i, j) = Cells(i + 2, j + 1).Value
    Next
    Next
'
i = 4
         Do Until Cells(2, i).Value = ""
            If Month(Cells(2, i)) = Range("B1").Value Then
                .List(0, rw) = Cells(2, i).Value
                .List(1, rw) = Cells(3, i).Value
                .List(2, rw) = Cells(4, i).Value
                .List(3, rw) = Cells(5, i).Value
                .List(4, rw) = Cells(6, i).Value
              rw = rw + 1
            End If
         i = i + 1
        Loop
    End With
End Sub
 
HSV,

Weer gelukt man!!
Voor mij uren tobben, voor jouw een fluitje van een cent

Hartelijk dank,

Offthefield
 
HSV,

Weer gelukt man!!
Voor mij uren tobben, voor jouw een fluitje van een cent

Hartelijk dank,

Offthefield

Als daarmee je vraag is beantwoord, zou je het dan als opgelost willen zetten?
Bvd.
 
Ik krijg problemen en foutmeldingen bij een aantal data!

Foutmelding :
Kan de eigenschappenlist niet invullen, ongeldige eigenschappenwaarde

De problemen en foutmeldingen zijn :
Maand 8 : Van de 8 data worden er 5 weergegeven ?
Maand 9 en 10 : Geven de bovenstaande foutmelding
Maand 11 : werkt tot nu de juiste data

Kan iemand mij vertellen waarom hij maar 5 van de 8 data weergegeven wordt?
en waarom de foutmelding gegeven wordt en wat betekend deze foutmelding ?

Bij voorbaat hartelijk dank

Offthefield
 

Bijlagen

Zet ColumnCount op -1 i.p.v. range("A1").value

Code:
i = 4
i.p.v. 7.

En een listbox kan maar 10 kolommen aan (0-9).
Dus haal eens een datum weg van maand 8, en zie.
 
HSV,

Goede tip!

Van 1e 3 kolommen heb ik de totaal weggehaald, kom hierdoor op een maximum van 10
bij maand 8, alleen maand 9 en 10 geeft de bovengenoemde foutmelding.

Waar kan dit aan liggen?

bvd

Offthefield
 
Maak eens een nieuw bestandje met maar één Userform en één code met de commandbutton op het blad.
Dus niet meerdere codes die bijna identiek zijn.
Scheelt een hoop zoekwerk voor me.
 
HSV,

Het schone bestand bijgevoegd

Als de uitslag van maand 8 / 9 / 10 (code 10 in A1) 10 kolommen hebben,
werkt maand 8 wel en maand 9 en 10 niet

Kan jij zien waar dit aan ligt?

bvd

Offthefield
 

Bijlagen

Code:
Private Sub Userform_Initialize()
Sheets("VERTICAAL2").Select
' Beginregel rw = row
' Geef het regel aan die er tussen zitten (3 kolommen)
  rw = 2
  c0 = "15;30"
  
' Geef het regel aan die er tussen zitten (3 kolommen)-> -3
    For cw = 1 To Range("A1").Value - 2
        c0 = c0 & ";" & 40
    Next
    With ListBox1
        .Clear
        .ColumnCount = Range("A1").Value
        .ColumnWidths = c0
   
' Bepalen van de kolommen 1 en 2
    For i = 0 To 7
    For j = 0 To 1
     .AddItem
     .List(i, j) = Cells(i + 2, j + 1).Value
    Next
    Next
'
i = 3
         Do Until Cells(2, i).Value = ""
            If Month(Cells(2, i)) = Range("B1").Value Then
            If rw >= 10 Then Exit Sub
                .List(0, rw) = Cells(2, i).Value
                .List(1, rw) = Cells(3, i).Value
                .List(2, rw) = Cells(4, i).Value
                .List(3, rw) = Cells(5, i).Value
                .List(4, rw) = Cells(6, i).Value
                .List(5, rw) = Cells(7, i).Value
                .List(6, rw) = Cells(8, i).Value
                .List(7, rw) = Cells(9, i).Value
            rw = rw + 1
            End If
        i = i + 1
        Loop
    End With
End Sub
 
Warme bakkertje,

Hartelijk dank voor de verbetering

Het had dus te maken met het aantal kolommen ertussen

Ik heb in mijn nieuwe procedure een aantekening gemaakt, zodat ik
het volgende keer niet meer vergeet

mvgr

Offthefield
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan