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.

Spalten aus mehreren Excel Tabellen in externes Excel Sheet in eine Spalte exportier
#1
Hallo Zusammen!

Ich habe folgendes Problem:
Ich habe verschiedene Excel-Dokument, die jeweils 30+ Tabellen beinhalten.
Jedes dieser Dokumente ist gleich aufgebaut.
Die erste Tabelle ist ein Overview und Tabelle 2 - X sind angaben zu einzelnen Daten(Usern).
In den Tabellen 2 - X sind eigentlich nur die User in Spalte A nacheinander aufgelistet.

Ich möchte ein Makro schreiben, das folgende Funktion hat:
In ein externes Excel-Sheet sollen alle User aus den Tabellen 2-X in Spalte A nacheinander aufgelistet werden und anschließend die Duplikate entfernt werden.

Kann mir hierzu jemand helfen?

Vielen Dank schon Mal im vorraus,

Grüße
Antworten Top
#2
Hi,

(05.04.2017, 09:43)MarJohSel schrieb: und Tabelle 2 - X sind angaben zu einzelnen Daten(Usern).
In den Tabellen 2 - X sind eigentlich nur die User in Spalte A nacheinander aufgelistet.

was nun, mMn wiederspricht sich das?
Antworten Top
#3
(05.04.2017, 09:43)MarJohSel schrieb: Ich möchte ein Makro schreiben, das folgende Funktion hat: [..]
... und was hindert dich daran, erst einmal eine Vorleistung in der Form zu erbringen, dass du mit dem Makro-Recorder erst einmal etwas aufzeichnest?
Das Ergebnis mit ein, zwei (gekürzten und anonymisierten) Muster-xlsx dann hier einstellen wäre hilfreich.
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Antworten Top
#4
@Rabe
widerspricht sich nicht wirklich, damit meine ich dass sich die Daten auf eine Spalte beschränken

@GMG-CC
ich habe leider nicht so gute Kenntnisse in VBA/ mit Makros, aber habe natürlich auch versucht etwas aufzuzeichen

Sub User_Count()
'
' User_Count Makro
'

'
    Windows("Salesman_count_20170329_ANDROID.xlsx").Activate
' Salesman_count_..... ist das Sheet aus dem ich die Daten haben will

    Sheets("DA_DK_AGR").Select
' DA_DK_AGR ist die zweite Tabelle/ die erste die ich verwenden will

    Range("A1").Select
    Selection.End(xlDown).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
' hier will ich nur die Inhalte aus Spalte A kopieren

    Windows("All_User.xlsm").Activate
    ActiveSheet.Paste
    Application.CutCopyMode = False
' hier will ich den kopierten Inhalt in das neue Excel Sheet einfügen

    Selection.End(xlDown).Select
    Range("A5").Select
' hier will ich ans Ende dieser eingefügten Liste springen, um dort anschließend den Inhalt der nächsten Tabelle einzufügen

    Windows("Salesman_count_20170329_ANDROID.xlsx").Activate
    Sheets("DA_DK_AGR_TURF").Select
    Range("A1").Select
    Selection.End(xlDown).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Windows("All_User.xlsm").Activate
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.End(xlDown).Select
    Range("A8").Select
    Windows("Salesman_count_20170329_ANDROID.xlsx").Activate
    Sheets("DA_DK_TURF").Select
    Range("A1").Select
    Selection.Copy
    Windows("All_User.xlsm").Activate
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Range("A9").Select
End Sub


-> Das ist das aufgezeichnete Makro für die Tabellenblätte 2-4
Antworten Top
#5
Moin,
das ist doch schon einmal ein Anfang. Bleibt noch:
Zitat:Das Ergebnis mit ein, zwei (gekürzten und anonymisierten) Muster-xlsx dann hier einstellen wäre hilfreich.

damit wir das Ganze gut nachvollziehen können.
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Antworten Top
#6
Hi,

(05.04.2017, 12:32)MarJohSel schrieb: @Rabe
widerspricht sich nicht wirklich, damit meine ich dass sich die Daten auf eine Spalte beschränken

ok, Du hast also X Blätter mit jeweils nur Daten (Usernamen) in Spalte A?

versuche mal dieses Makro an einer Kopie Deiner Dateien (Tabelle1 ist das neue Blatt):
Sub User_Count()
   ' 
   ' User_Count Makro 
   ' 
   
   ' 
   
   For i = 2 To Sheet.Count
      ' Salesman_count_..... ist das Sheet aus dem ich die Daten haben will 
      ' DA_DK_AGR ist die zweite Tabelle/ die erste die ich verwenden will 
      With Workbook("Salesman_count_20170329_ANDROID.xlsx").Sheets(i)
         loLetzte1 = .Cells(Rows.Count, 1).End(xlUp).Row           ' letzte belegte in Spalte A (1) 
         loLetzte = Workbook("All_User.xlsm").Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).Row           ' letzte belegte in Spalte A (1) 
         
         ' hier will ich nur die Inhalte aus Spalte A kopieren 
         ' hier will ich den kopierten Inhalt in das neue Excel Sheet einfügen 
         .Range("A1:A" & loLetzte1).Copy Workbook("All_User.xlsm").Sheets("Tabelle1").Range("A" & loLetzte)
      End With
   Next i
   Application.CutCopyMode = False
End Sub
Antworten Top


Gehe zu:


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