VBA-Makro, um Zellen mit einem neuen Blatt-Excel auf Basis von Zellinhalten zu verschieben

StackOverflow https://stackoverflow.com//questions/25069593

  •  26-12-2019
  •  | 
  •  

Frage

Ich schaue um und konnte nicht die spezifische Antwort finden, die ich brauche. Also werde ich fragen. Ich habe ein Blatt (Blatt1) mit Daten nur auf Spalte A. Es sieht so aus:

eingeben Sie das Bildbeschreibung hier ein

und ich muss ein VBA-Makro erstellen, das in Spalte A für jede Zelle sucht, die ID, TITL und AUTH enthält. Und bewegen Sie sie in eine bestimmte Spalte in einem anderen Blatt (Sheet2). Sheet2 verfügt über 3 Spalten: ID, Titel und Autor.

Die Sache ist, dass er zusammen mit dem Kopieren der Daten der Zelle in seine spezifische Spalte in Sheet2 kopiert, sondern auch den ersten Teil der Daten löschen. Beispielsweise: ID: R564838 in Sheet1 muss in Sheet2 in die ID-Spalte in Sheet2 verschoben werden, ohne die "ID:" darin. So müsste nur R564838 bewegt werden. Auch "TITL:" und "Auth:" müsste beim Kopieren entfernt werden.

Ich hoffe, das macht das Sinn. Ich lerne nur VBA-Makros. Also habe ich keine Ahnung, wie ich das erreichen kann.

update

Ich habe diesen Code:

generasacodicetagpre.

ende sub

und es funktioniert. Es gibt jedoch einige Authäure- und Titl in der Blatt1, die leer sind. Und die Situation ist, dass, wenn diese Läufe läuft, keine leere Zelle hinterlässt, wenn AUTH oder TITL leer ist. Ich brauche das Makro, um eine leere Zelle zu hinterlassen, wenn Auth oder Titl leer ist, sodass die Information für jedes Buch übereinstimmen. Ich hoffe, Sie verstehen mein Problem.

vielen Dank!

War es hilfreich?

Lösung

Stellen Sie einige Variablen ein, um sicherzustellen, dass Sie an der rechten Arbeitsmappe / des Blattes / der Spalte arbeiten

generasacodicetagpre.

Finden Sie die letzte Zelle der Spalte

generasacodicetagpre.

schauen Sie sich jede Zelle an, um herauszufinden, was mit ihm zu tun ist

generasacodicetagpre.

den Inhalt der Zelle auswerten (wissen, ob es etwas bestimmtes enthält)

generasacodicetagpre.

den Inhalt des Interesses der Zelle extrahieren (entfernen Sie den "Header")

generasacodicetagpre.

Platzieren Sie den Inhalt in die nächste verfügbare Zeile des zweiten Blatts (unter der Annahme der ID geht in Spalte 1)

generasacodicetagpre.

herausfinden, wie Sie die Bits des Codes zusammenstellen und an Ihre genauen Bedürfnisse anpassen!


in Antwort auf Ihren Kommentar:

Grundsätzlich ja, aber Sie könnten in irgendeiner Mühe stoßen, da es nicht völlig umfassend ist, dass Ihre besondere Situation nicht vollständig ist. Was Sie vielleicht tun müssen, ist:

    .
  1. speichern Sie die ID (sobald Sie einen finden) in einer Variablen;
  2. tun dasselbe für den Titel und Autor;
  3. Nachdem Sie eine Trennungszeile gefunden haben, schreiben Sie stattdessen den aktuellen Inhalt der Variablen auf die nächste verfügbare Zeile und leeren den Inhalt dieser Variablen.
  4. Beispiel:

    generasacodicetagpre.


    hier gehst du :)

    generasacodicetagpre.

    Wenn Sie Hilfe brauchen, um zu verstehen, was ich geändert habe, lassen Sie es mich wissen, aber es sollte ziemlich unkompliziert sein!

Andere Tipps

Sie möchten möglicherweise auch versuchen, einen Text in der Spalte mit A: als Separator auszuführen.Das würde Ihre Informationen in zwei Spalten anstelle von 1 geben, dann können Sie eine Spalte für den Header durchsuchen und den nächsten Spaltenwert, leer oder auf andere Weise kopieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top