Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bestimmte Zellen füllen und dann um bestimmten Abstand weiter springen VBA
#1
Liebes Forum,
ich würde gerne eine Tabelle erstellen und diese soll sich über ein VBA Skript dyamisch füllen.
Ich möchte das die Ursprungstabelle nach einem bestimmten Wert durchsucht wird ( im Anhang die Wert in Spalte B Ursprungstabelle). 
Dieser Wert soll dann in einer definierten Zelle in der Ausgabetabelle ausgegeben werden und eine Zelle darunter die Werte die sich in der Selben Zeile befinden jedoch in den Spalten E und F, wenn das Suchkriterium erneut gefunden wird soll um zwei Spalten nach rechts gesprungen werden und diese erneut eingetragen werden bis alle Einträge die das Suchkriterium erfüllt haben eingetragen sind.
Im Anschluss soll nach einem neuen Kriterium gesucht werden und diese Ergebnisse im selben Format wie oben 3 Zeilen darunter ausgegeben werden und erneut mit zwei Spalten Abstand die anderen Suchergebnisse wie oben eintragen.
Ich habe in der Datei im Anhang dargestellt wie ich es meine, falls es hier nicht verständlich ist.
Was noch wichtig wäre, dass wenn ein Suchkriterium nicht vorkommt, dass dann dort keine zwei Zeilen freigelassen werden, sondern zum nächsten Kriterium gesprungen wird. Das die Abstände unter den gefundenen Werten immer gleich sind, auch wenn eines in einer Tabelle mal nicht vorkommt.
Liebe Grüße
Excel 19


Angehängte Dateien
.xlsx   beispieltabelle.xlsx (Größe: 9,55 KB / Downloads: 5)
Antwortento top
#2
Hallöchen,

hier ein Code für ein normales Modul. Ausführen tust Du den, wenn das Blatt mit den Quelldaten aktiv ist. Den Projektleider Smile müsstest Du selber eintragen, der muss aber auch immer in Zeile 2 bei der Quelle bleiben

Code:
Sub test()
'Variablendeklarationen
Dim iCnt%, rCnt%, cCnt%
'Startwert setzen fuer Quellzeile, Zielzeile und Zielspalte
iCnt = 3: rCnt = 2: cCnt = 3
'Schleife solange was in Spalte B steht
Do While Cells(iCnt, 2) <> ""
  'Wenn in der Zelle in B was anderes steht als in der vorigen Zelle,
  'Startwerte neu setzen
  If Cells(iCnt, 2) <> Cells(iCnt - 1, 2) Then rCnt = rCnt + 5: cCnt = 3
  'Mit der Zelle Zeile, Spalte dem Blatt Ausgabe
  With Sheets("Ausgabe").Cells(rCnt, cCnt)
     'Vorname und Name uebernehmen
     .Value = Cells(iCnt, 5) & " " & Cells(iCnt, 6)
     'darunter Funktion eintragen
     .Offset(1, 0).Value = Cells(iCnt, 2)
  'Ende Mit der Zelle Zeile, Spalte dem Blatt Ausgabe
  End With
  'Quellzeile und Zielspalte erhöhen
  iCnt = iCnt + 1: cCnt = cCnt + 2
'Ende Schleife solange was in Spalte B steht
Loop
End Sub
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
[-] Folgende(r) 1 Benutzer sagt Danke an schauan für diesen Beitrag:
  • ExcelFoley69
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste