Eerst ingevulde cell

Status
Niet open voor verdere reacties.

sarges

Gebruiker
Lid geworden
11 okt 2008
Berichten
57
Hallo,

Kan iemand mij verder helpen met het volgende:
xlToRight moet de eerst volgende cell worden die wel is ingevuld.
De regel loopt van D5 tot BC5 waar gegevens kunnen staan.

Groet,

Serge

Code:
If Range("D5").Value = "" Then
Do Until ActiveCell.End(xlToRight).Select
Loop
TextBox1.Value = Selection.Value
End If
 
Hallo,
xlToRight moet de eerst volgende cell worden die wel is ingevuld.
Groet,

Serge

Niet erg duidelijk of wel? (kan ook aan mij liggen).
 
Het kan dat ik niet duidelijk ben geweest. :o
Daarom had ik ook de code er onder gezet om het wat duidelijker te maken.
Ik probeer het anders:

In de regel D5 t/m BC5 (dit staat voor mij in weken 1 t/m 52) zou de eerst ingevulde cell geselecteerd moeten worden en deze weer geven in de TextBox1.Value.

xlToRight gaat nu zonder iets te selecteren naar het eind van de regel.

Edit: Als het goed is heb ik een voorbeeld bijgevoegd
Bekijk bijlage Cell_selecteren.xls
 
Laatst bewerkt:
Lukt het hiermee?

Code:
TextBox1.Value = Range("BC5").End(xlToLeft).Value
 
Het zou mooier zijn echt alleen van D5 t/m BC5, maar je idee zou wel een oplossing zijn.
Wellicht in de bijlage begrijp je het meer wat ik bedoel.

Serge
 
Probeer dit eens Serge.
Code:
Private Sub UserForm_Initialize()
TextBox1.Value = Range("C4").Value 'Afdeling
Application.Goto Range("D5")
   If Range("D5") = "" Then
Do Until ActiveCell.End(xlToRight).Select

Loop
    With ActiveCell
       TextBox2.Value = .Value
         TextBox3.Value = .Offset(-2).Value
    For i = 4 To 7
      Me("TextBox" & i).Value = .Offset(i - 3).Value
    Next i
  End With
Else
   With Range("D5")
      TextBox2.Value = .Value
       TextBox3.Value = .Offset(-2).Value
          For i = 4 To 7
            Me("TextBox" & i).Value = .Offset(i - 3).Value
         Next i
     End With
   End If
End Sub

Private Sub CommandButton1_Click()

Do Until ActiveCell.End(xlToLeft).Select

Loop
 
   If ActiveCell.Column < Range("D5").Column Then GoTo einde
With ActiveCell
  TextBox2.Value = .Value
   TextBox3.Value = .Offset(-2).Value
     For i = 4 To 7
        Me("TextBox" & i).Value = .Offset(i - 3).Value
      Next i
    End With
  Exit Sub
einde: Application.Goto ActiveCell.End(xlToRight)
End Sub

Private Sub CommandButton2_Click()
  
Do Until ActiveCell.End(xlToRight).Select

Loop
   If ActiveCell.Column > Range("BC5").Column Then GoTo einde
With ActiveCell
   TextBox2.Value = .Value
    TextBox3.Value = .Offset(-2).Value
        For i = 4 To 7
          Me("TextBox" & i).Value = .Offset(i - 3).Value
        Next i
     End With
  Exit Sub
einde: Application.Goto ActiveCell.End(xlToLeft)
End Sub
 

Bijlagen

Dit is echt geweldig.:thumb:
Heel erg bedankt, ik ga er verder mee.
Heb nog een hoop te leren merk ik weer :d

Groet Serge
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan