Combobox wissen

  • Onderwerp starter Onderwerp starter Roma
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

Roma

Gebruiker
Lid geworden
7 sep 2013
Berichten
515
Beste,
Allereerst ik heb nog nooit met een combobox gewerkt vandaar mijn volgende vraag:

Ik heb gemaakt een combobox met namen. Nu wil ik graag dat achter elke naam een formule komt te staan die op 4 verschillende tabbladen een aantal rijen wist.
Ik heb het in het voorbeeld gezet.

Wie wil mij helpen dit probleem op te lossen?
Alvast bedankt.
 

Bijlagen

ik begrijp totaal niet wat je vraag is en wat je nu wil.

1.een formule? =A1+B1??
2.een formule wist geen regels
3.wat heeft die formule met je combobox te maken


Niels
 
Beste Niels,
Misschien heb ik het verkeerd neergezet.
Maar de bedoeling is dat bij bijv. naam 1 de rijen wist op de tabbladen 2,3,4 en 5 van cel A9 t/m AG9, cel C53 t/m AG53, cel C96 t/m AG96
Nam 2 wordt dan A10 enz.

Ron
 
En bedoel je met 'rijen wissen' de cellen leegmaken, of de rijen verwijderen? Want dat scheelt nogal.
 
cellen verwijderen:

Code:
Private Sub CommandButton1_Click()
If ComboBox1.Value <> "" Then
For sh = 2 To 5
    Sheets(sh).Range("C" & ComboBox1.ListIndex + 96).Resize(1, 31).Delete Shift:=xlUp
    Sheets(sh).Range("C" & ComboBox1.ListIndex + 53).Resize(1, 31).Delete Shift:=xlUp
    Sheets(sh).Range("C" & ComboBox1.ListIndex + 9).Resize(1, 31).Delete Shift:=xlUp
Next
End If
End Sub

anders .Delete Shift:=xlUp vervangen door clearcontents

Niels
 
Laatst bewerkt:
Niels ,
bedankt ik ga het uitproberen. De regels moeten gewist worden en niet werwijderd.
Je hoort van mij
Ron
 
Niels,
Het werkt perfect,
Bestaat er ook een mogenlijkheid de sheets een naam te geven? Het is een vrij groot bestand en de tabbladen staan op diverse plaatsen
 
Dat kan toch gewoon onderin je scherm? Rechtermuisknop en dan "Rename".
 
Bij deze


Code:
Private Sub CommandButton1_Click()
If ComboBox1.Value <> "" Then
sh = Array("blad2", "blad3", "blad4", "blad5")
For i = 0 To UBound(sh) + 1
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 96).Resize(1, 31).ClearContents
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 53).Resize(1, 31).ClearContents
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 9).Resize(1, 31).ClearContents
Next
End If
End Sub

Niels
 
Niels,
Kleine foutmelding: Subscript valt buiten het bereik



Code:
Private Sub CommandButton1_Click()
If ComboBox1.Value <> "" Then
sh = Array("KWART 1", "KWART 2", "KWART 3", "KWART 4")
For i = 0 To UBound(sh) + 1
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 96).Resize(1, 31).ClearContents
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 53).Resize(1, 31).ClearContents
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 9).Resize(1, 31).ClearContents
 
mijn fout, de + 1 moet weg achter de for regel

Niels
 
Niels,
Je bent een topper Het werkt perfect zoals ik het graag wilde.
Bedankt voor je tijd

Ron
 
Niels,

Ik ben vergeten te melden dat mijn tabbladen verborgen zijn. Ik prbeer de code aan te passen maar dat lukt mij niet.
Ik heb de volgende code gebruikt maar geeft een foutmelding.

Code:
Private Sub CommandButton1_Click()
If ComboBox1.Value <> "" Then
ActiveSheets.Visible = xlSheetVisible
 ActiveSheets.Activate
        ActiveSheets.Unprotect ""
sh = Array("KWART 1", "KWART 2", "KWART 3", "KWART 4")
For i = 0 To UBound(sh)
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 96).Resize(1, 31).ClearContents
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 53).Resize(1, 31).ClearContents
    Sheets(sh(i)).Range("C" & ComboBox1.ListIndex + 9).Resize(1, 31).ClearContents
    ActiveSheets.Visible = xlSheetHidden
Next
End If
End Sub

Wat doe ik fout?
 
het maakt niet uit dat de sheets verborgen zijn.
 
maar om te laten zien hoe het zou kunnen

Code:
Private Sub CommandButton1_Click()
If ComboBox1.Value <> "" Then
sh = Array("blad2", "blad3", "blad4", "blad5")
For i = 0 To UBound(sh)
With Sheets(sh(i))
    .Visible = True
    .unprotect
    .Range("C" & ComboBox1.ListIndex + 96).Resize(1, 31).ClearContents
    .Range("C" & ComboBox1.ListIndex + 53).Resize(1, 31).ClearContents
    .Range("C" & ComboBox1.ListIndex + 9).Resize(1, 31).ClearContents
    .protect
    .Visible = False
End With
Next
End If
End Sub

Niels
 
Laatst bewerkt:
Beste Niels,
Allereerst hartelijk dank voor je medewerking.
De code werkt perfect in mijn bestand.

Helaas heeft de code een conflict met een andere code.

Code:
'Dienstcodes kleuren
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If WorksheetFunction.Or(Sh.Name = "KWART 1", Sh.Name = "KWART 2", Sh.Name = "KWART 3", Sh.Name = "KWART 4") Then
[COLOR="#FF0000"]If Not Intersect(Target, Range("C9:AG43, C53:AG87, C96:AG130")) Is Nothing Then  [/COLOR]
 With Sheets("Kleurencode").Range("F7:L35")
        Set c = .Find(Target.Value, LookIn:=xlValues, LookAt:=xlWhole)
       Sh.Unprotect "3060"
        If Not c Is Nothing Then
            Target.Interior.Color = c.Interior.Color
'            Target.Offset(44).Interior.Color = c.Interior.Color
'            Target.Offset(87).Interior.Color = c.Interior.Color
        Else
            Target.Interior.Color = xlNone
          MsgBox "Je hebt een ongeldige code gekozen." & vbNewLine & "Kies een andere code.", vbExclamation, "Kleurencode."
            Target.Value = ""
       End If
       Sh.Protect "3060"
    End With
  End If
 End If
End Sub

Foutcode:Methode intersect van Object_globel is mislukt

weet jij hoe dit opgelost kan worden?
Deze code staat in this Workbook
Ron
 
Laatst bewerkt:
Volgens mij kun je beter eerst een basiscursus VBA volgen.
Als je niet in staat bent de meest eenvoudige aanpassing aan een suggestie te doen, vraag je niet 'helpmij' maar 'maak voor mij'.
Dat is essentieel iets anders.
Dit soort fora is bedoeld mensen te helpen hun eigen 'oplossingen' te (leren) maken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan