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

Regelhoogte automatisch instellen op voorwaarde cel

Status
Niet open voor verdere reacties.

Jap3600

Gebruiker
Lid geworden
19 mei 2015
Berichten
91
Hallo allemaal

Ik heb onderstaande code welke ik in elkaar gefabriceerd heb met behulp van een andere code.
Deze werkt goed alleen heb ik 2 hulpkolommen nodig.
- 1 waarin de waarde "R" gezocht wordt (kolom B)
- 1 waarin ik de waarde (rijhoogte) type waar deze aan moet voldoen in (kolom C)

Kan iemand me helpen om de code zo aan te passen dat de rijhoogte altijd automatisch moet zijn rows.autofit als er geen getal is ingevuld en dat hij de rijhoogte aanpast naar het getal in kolom C indien daar een getal in staat tussen de 0 en 15?



Code:
Private Sub Regelhoogte6()

Dim c2 As Variant, firstaddress As Variant
 With Sheets("Offerte")
     
 Set c2 = .Columns(2).Find("R", LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, _
        SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
  
     If Not c2 Is Nothing Then
           firstaddress = c2.Address
    Do
      
      Rows(c2.Row).RowHeight = Cells(c2.Row, 3)
      
      Set c2 = .Columns(2).FindNext(c2)
    Loop While Not c2 Is Nothing And c2.Address <> firstaddress
  End If
  
 End With
   
End Sub
 
Zoiets?
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column = 3 And Target.Count = 1 Then
    If IsNumeric(Target.Value) And Target.Value <> "" Then Rows(Target.Row).RowHeight = Application.Min(Abs(Target.Value), 15) Else Rows(Target.Row).AutoFit
  End If
End Sub
 
Beste VenA

Als eerste dank voor je reactie.

Echter is het niet helemaal wat ik zoek. (maar het werkt wel perfect indien je dit per regel separaat wil doen...). Dit komt omdat deze nu vast hangt aan de het selecteren van de kolom. Deze code moet ik ook plakken in het gedeelte van de sheet.
Echter wil ik hem laten lopen nadat de waarden in de kolom (in dit geval kolom C, dus 3) uit een andere code daar in komen te staan. En hem dus ook niet vast hangen aan een sheet maar kunnen gebruiken in Modules.
Dus in alle waarden kijken in kolom 3 van boven tot onder (of toch in ieder geval vanaf regel 4 te beginnen tot het einde)

Ik hoop dat je hier ook een mogelijke oplossing voor hebt....
 
Plaats het bestand maar eens.

En anders maak je een lusje met iets van

Code:
For each cl in columns(3).specialcells(2,1)
Doe iets
Next cl
 
Plaats het bestand maar eens.

Code:
For each cl in columns(3).specialcells(2,1)
Doe iets
Next cl

Dag VenA

Nog even zitten knutselen om er zelf uit te komen...... maar helaas lukt het me niet.
In bijlage een klein voorbeeldje wat ik erna graag in het hoofdbestand zou willen invoegen.

Hoop dat het wat duidelijker wordt met dit voorbeeldje en je me verder kan helpen.

Heb nog wat uitleg in het bestand toegevoegd en ook in de code.
 

Bijlagen

  • Regelhoogte.xlsm
    20,6 KB · Weergaven: 14
Het quoten is niet nodig.

Helemaal duidelijk is het mij niet maar misschien zo.

Code:
Sub VenA()
  Rows.AutoFit
  On Error Resume Next 'geen getallen in Kolom C
  For Each cl In Columns(3).SpecialCells(2, 1)
    If cl.Row > 3 Then Rows(cl.Row).RowHeight = Application.Min(Abs(cl.Value), 25)
  Next cl
End Sub
 
Dag VenA

Ondanks dat het je niet helemaal duidelijk is heb je me wel weeral geweldig geholpen.
Dit brengt me enorm op weg.... waarvoor mijn dank. :D
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan