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.

VBA Zellenwerte in andere Tabelle kopieren
#1
Moin zusammen, 
ich bin ein völliger Vollidiot was VBA angeht. Jedoch sehe ich keine andere Möglichkeit mein Problem anders zu lösen.

Folgendes Szenario:

Mittels eine Funktion, wird einer Zelle ein bestimmter Wert zugesprochen. Diesen Wert geht es zu übermitteln.

In der Zelle Y6 befindet sich also eine Formel, welche den Wert 1.10 für diese Zelle erzeugt.
Ich möchte nun, mittels Makro, das diese Zellen ohne Leerzeile in eine andere Tabelle untereinander kopiert wird. Angefangen bei der Zelle E3.

Die Funktion in meinem Kopf müsste ungefähr so Lauten:

Wenn Tabelle1 / Y6 Gefüllt -> den Wert nach Tabelle2 / E3 kopieren.
Wenn Tabelle1 / Z6 Gefüllt -> den Wert nach Tabelle2 / E4 kopieren.
Wenn Tabelle1 / AA6 Gefüllt -> den Wert nach Tabelle2 / E5 Kopieren.
 ---- // ---- 
Wenn Tabelle1 / Z7 Leer -> überspringen und bei Tabelle1 / AA7 weiter machen.
Wenn Tabelle1 / AA7 gefüllt -> den Wert nach Tabelle2 / Spalte E Zelle ?? Anfügen.

(Y12 bis Y29 soll das Endresultat darstellen. So soll es in Tabelle2 aussehen)


Es soll am ende eine Liste ohne Lücken entstehen, in der KEINE Formeln sondern Werte stehen.
Mein Mindblow ist, wenn eine Zelle nicht gefüllt ist, was passiert dann?! Ich versteh es einfach nicht...



Ich hoffe mir kann jemand helfen. Nach 2 Std Googeln, habe ich nichts auf die Kette bekommen und stehe völlig auf dem Schlauch.

 
Hier meine Tabelle 
   
Antworten Top
#2
Hallöchen,

probiere mal das mit Aufzeichnung eines Makros hinzubekommen. Siehe dazu Excel-Word-Makrorekorder
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#3
Zitat:Hier meine Tabelle 


Hi,
ich sehe nur ein Bild und keine Tabelle.
In Bildern lassen sich keine Formeln oder Makros testen. Lade bitte eine Beispieltabelle hoch.
Cadmus
Antworten Top
#4
Hallo

hier mal ein Code von dem ich hoffe das er passt. Basierend auf den Bild Angaben.  Würde mich freuen wenn es damit klappt.

mfg Gast 123

Code:
Option Explicit                  'Gast 123  für Clever Forum
Dim AC As Range, lz1 As Long     'Zeilen Abfrage
Dim j As Integer, s As Integer   'Spalten Abfrage


'kopieew aus Tabelle1, Spalten Y bis AE
'in Tabelle2 ab Spalte E ohne Lücken!!


Sub Tabellen_kopieren()
Dim Tb2 As Worksheet, z As Long
Set Tb2 = Worksheets("Tabelle2")
Tb2.Cells.Clear

With Worksheets("Tabelle1")
     'LastZell in Tabelle1 zum auflisten
     lz1 = .Cells(Rows.Count, "Y").End(xlUp).Row
     z = 1 '1.Zeile in Tabelle2
     'Alle Zeilen in Spalte Y abfragen
     For Each AC In .Range("Y1:Y" & lz1)
         s = 5   '1. Spalte "E" in Tabelle2
        'Spalte Y bis AE einzeln abfragen
        For j = 1 To 7
            'Spalte Y bis AE nach Werten abfrage
            If AC.Cells(1, j) <> "" Then
               'Kopieren wenn Wert gefunden wird
               AC.Cells(1, j).Copy Tb2.Cells(z, s)
               s = s + 1  'auf Next Spalte setzen
            End If
        Next j
        'auf naechste Zeile umschalten wenn Werte kopiert wurden!
        If s > 5 Then z = z + 1
     Next AC
End With

'**  dieser Teil kann gelöscht werden; aktiviert nur Tabelle2
Worksheets("Tabelle2").Select
End Sub
Antworten Top


Gehe zu:


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