Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Wert in einer Spalte eintragen bis Ende | Herbers Excel-Forum


Betrifft: Wert in einer Spalte eintragen bis Ende von: Nicole
Geschrieben am: 09.12.2009 15:45:32

Hallo alle zusammen,

ich möchte eigentlich einfach nur in Spalte A ein "X" eingefügt haben, solange in Spalte Y ein Wert steht.
Steh da irgendwie gerade auf dem Schlauch. Mit meiner Formel gibt es kein Ende, es wird alles ausgefüllt.

Do Until IsEmpty(ZelleA)
Set ZelleA = rgQuelle1.Offset(A, 0)
If ZelleA.Value <> "" Then
ZelleA.Offset(A, -24).Value = "X"
End If
A = A + 1

Loop

Vielen Dank für die Hilfe
Nicole

  

Betrifft: AW: Wert in einer Spalte eintragen bis Ende von: hary
Geschrieben am: 09.12.2009 16:51:44

Hi
eine Moeglichkeit.

Sub X()
Dim i As Long
Application.ScreenUpdating = False
Range("A:A").ClearContents 'löscht nach aenderungen erstmal die X
For i = 1 To Cells(Rows.Count, 25).End(xlUp).Row 'bis letzte belegte Zelle in Y
 If Cells(i, 25) <> "" Then Cells(i, 1) = "X"
 Next
 Application.ScreenUpdating = True
End Sub

gruss hary


  

Betrifft: AW: Wert in einer Spalte eintragen bis Ende von: fcs
Geschrieben am: 09.12.2009 16:52:07

Hallo Nicole,

im Prinzip sollte es schon funktionieren. Vorraussetzung ist natürlich, dass rgQuelle1 eine Zelle in Spalte Y ist.

Der Zeilen-Offset für das Eintragen der "X" muss dann aber 0 sein, damit in die gleiche Zeile eingetragen wird.

In Spalte Y darf in den scheinbar leeren Zellen aber auch nur nichts bzw. das Formelergebis "" (Leerstring) stehen.

Gruß
Franz

Sub aatest()
  Dim rgQuelle1 As Range, ZelleA As Range, A As Long
  
  Set rgQuelle1 = ActiveCell            'Testzeile
  
  If rgQuelle1.Column <> 25 Then        '#angepasst
    MsgBox "Startzelle ist nicht in Spalte Y" '#angepasst
  Else                                  '#angepasst
    A = 0                               '#angepasst
    Set ZelleA = rgQuelle1
    Do Until IsEmpty(ZelleA)
      Set ZelleA = rgQuelle1.Offset(A, 0)
      If ZelleA.Value <> "" Then
        ZelleA.Offset(0, -24).Value = "X"  '#angepasst
      End If
      A = A + 1
    Loop
  End If                                   '#angepasst
End Sub



  

Betrifft: AW: Wert in einer Spalte eintragen bis Ende von: Nicole
Geschrieben am: 09.12.2009 17:15:12

Super Franz, mit deinem Code klappt es.
Vielen Dank
Nicole


Beiträge aus den Excel-Beispielen zum Thema "Wert in einer Spalte eintragen bis Ende"