Microsoft Excel

Herbers Excel/VBA-Archiv

CODE Zusammenfassen oder umschreiben

Betrifft: CODE Zusammenfassen oder umschreiben von: Lorenz
Geschrieben am: 18.08.2004 14:04:46

Hallo!

Ist es möglich den Abschnitt "Then rng.Offset(0, 6).Value " - die "Section2"
aus untenstehenden CODE zuzuordnen? (sodass "Cells(a, 9).ClearContents" nicht notwendig ist)


Sub Eintragen()
   Dim rng As Range, i As Integer, a As Integer, k As Integer
   Set rng = Range("C1")
   For i = 1 To 25
   If IsEmpty(rng) Then
   End If
   Set rng = rng.Offset(0, 0)
      If rng = "x" Then rng.Offset(0, 6).Value = rng.Offset(0, -2)
Next


'Section2
k = 1
For a = 1 To 25
If Not IsEmpty(Cells(a, 9)) Then
Cells(k, 10).Value = Cells(a, 9).Value
'Cells(a, 9).ClearContents
k = k + 1
Else
End If
Next
End Sub


PS: in Spalte "C" wird ein x eingetragen; In der Zeile wo "x" steht soll der Eintrag aus Spalte "A" in Spalte "J" (ohne Leerzellen)eingetragen werden.

Gruss Lorenz
  


Betrifft: AW: CODE Zusammenfassen oder umschreiben von: PeterW
Geschrieben am: 18.08.2004 14:47:16

Hallo Lorenz,

erklär doch mal was du genau möchtest. Den ersten Teil deiner Aufgabenstellung erledigt:
Sub Eintragen()
   Dim i As Integer
   For i = 1 To 25
      If Cells(i, 3) = "x" Then
         Cells(i, 10) = Cells(i, 1)
         Cells(i, 1) = ""
      End If
   Next
End Sub

Gruß
Peter


  


Betrifft: AW: CODE Zusammenfassen oder umschreiben von: Lorenz
Geschrieben am: 18.08.2004 15:12:28

Hallo Peter!

Danke für den nicht so umständlichen CODE (is ja viel einfacher als mein Pfusch).

Zum "zweiten Teil der Aufgabenstellung:
wie in Spalte "10" ausgegeben ist schon OK, aber wenn in Spalte "3" kein "x", somit ist zwangsläufig in Spalte "10" auch eine Leerzelle in der jeweiligen Zeile.

Die Darstellung der Daten sollte aber in Serie (ohne "Leerzeilen")geschehen: J1, J2, J3, J4,......

Grüsse Lorenz


  


Betrifft: AW: CODE Zusammenfassen oder umschreiben von: PeterW
Geschrieben am: 18.08.2004 15:35:57

Hallo Lorenz,

bei leerer Spalte J sollte das so gehen:
Sub Eintragen()
   Dim i As Integer
   Dim iZiel As Integer
   iZiel = 1
   For i = 1 To 25
      If Cells(i, 3) = "x" Then
         Cells(iZiel, 10) = Cells(i, 1)
         iZiel = iZiel + 1
         Cells(i, 1) = ""
      End If
   Next
End Sub

Gruß
Peter


  


Betrifft: AW: CODE Zusammenfassen oder umschreiben von: Lorenz
Geschrieben am: 18.08.2004 15:50:22

Hallo Peter!

Das wars. Alles funzt nach Wunsch!

Danke vielmals!

Gruss Lorenz


 

Beiträge aus den Excel-Beispielen zum Thema "CODE Zusammenfassen oder umschreiben"