Clever-Excel-Forum

Normale Version: Werte aus unterschiedlichen Dateien zusammenführen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo

das kommt darauf an wo die Zellen liegen, ob sie schön nebeneinander liegen, oder weit verstreute Bereiche???
Bei Zellen die nebeneinander sind kann man eine For Next Schleife machen, und den Offset über i oder j angeben.
Bei verstreuten Zellen gibt es noch die Union Methode, damit kenne ich mich aber leider nicht aus!
Auf jeden Fall bleibt die Eizelmethode, jede Zelle einzeln kopieren, ist aber sehr Programmaufwendig.

mfg Gast 123
Sie liegen meist weit verstreut auf dem Formular.

Aktuell werden doch aber auch 3 Werte ausgelesen, die nicht nebeneinander liegen?
Kann man mit der Logik nicht einfach noch mehr Zellen kopieren?
Hallo,

eine gewisse Logik kann ich schon erkennen.

Code:
'               'Faten des Formulars auflisten, B3; B7; B11
'               .Cells(iRow, 1).Value = Wb.Worksheets(i).Range("B3")
'               .Cells(iRow, 2).Value = Wb.Worksheets(i).Range("B7")
'               .Cells(iRow, 3).Value = Wb.Worksheets(i).Range("B11")
               For lngc = 1 To 15
                  .Cells(iRow, i).Value = Wb.Worksheets(i).Range("B" & 4 + 3 * (i - 1))
               Next lngc
Meins sieht aktuell so aus:
Code:
'Daten des Formulars auflisten, C4; D4; C5; H6
               .Cells(iRow, 1).Value = Wb.Worksheets(i).Range("C4")
               .Cells(iRow, 2).Value = Wb.Worksheets(i).Range("D4")
               .Cells(iRow, 3).Value = Wb.Worksheets(i).Range("C5")
               .Cells(iRow, 4).Value = Wb.Worksheets(i).Range("H6")
               iRow = iRow + 1

Und er liest mir korrekt die Werte aus den verstreuten Zellen aus. 
Mein Problem ist nur, dass mir in der Zusammenfassung maximal 5 Saplten angezeigt werden. 

Die "Datenquelle" wird in meinem Fall jetzt schon mit einem Wert überschrieben. 

Ich möchte einfach nur noch zusätzliche Spalten in der Zusammenfassung - das kann doch nicht so komplex sein?

(10.12.2019, 14:39)Steffl schrieb: [ -> ]Hallo,

eine gewisse Logik kann ich schon erkennen.

Code:
'               'Faten des Formulars auflisten, B3; B7; B11
'               .Cells(iRow, 1).Value = Wb.Worksheets(i).Range("B3")
'               .Cells(iRow, 2).Value = Wb.Worksheets(i).Range("B7")
'               .Cells(iRow, 3).Value = Wb.Worksheets(i).Range("B11")
              For lngc = 1 To 15
                 .Cells(iRow, i).Value = Wb.Worksheets(i).Range("B" & 4 + 3 * (i - 1))
              Next lngc

Was soll ich damit? Ich möchte nicht B3, B7, B11 auslesen, sondern z.B. A4, C10, B15, AG10
Daraus lässt sich keine sinnvolle Logik erstellen.
Hallo,

ich habe mich bei meinen Vorschlag an den Code von Gast 123 aus diesem Beitrag orientiert und auf deine Antwort darau

(09.12.2019, 16:47)StrammerMax schrieb: [ -> ]Perfekt - hat direkt mit dem Code ohne Anpassungen funktioniert. 
Vielen, vielen Dank nochmal :)

das die Logik eine andere ist, wußte ich nicht.
Hallo

im Augenblick habe ich auch ein wenig Probleme dein Anliegen zu verstehen. Das von dir in der Antwort #14 entwickelte System laesst sich doch in der Zusammenfassung auf beliebig viele Spalten erweitern. Auch mehr als 15 ist kein Prolbem. Im Beispiel das ich erstellt habe iist ja nach Links genug Platz frei'!!  Und diese Code Angabe:  .Cells(iRow, nn)  kannst du auf beliebig viele Spalten anwenden.Ist halt nur Schreibarbeit.

Was ich jetzt nicht verstanden habe, warum in der Zusammenfassung nur fünf Spalten zur Verfügung stehen sollen???
Kannst du uns das noch mal genauer Erklaeren. Das habe ich momentan noch nicht richtig verstanden ...

mfg Gast 123

Pardon   nach Rechts natürlich, da sind alle Spalten noch frei ....
Gast 123 du hast es richtig verstanden.

In meinem Beispiel gab es nur 3 Werte aus den Formularen die ausgelesen werden sollten. Dazu noch der Blattname und der Name der Datei aus der es kommt.

Im tatsächlichen Formular sind aber mehr als 3 Werte die ausgelesen werden sollen. Dort sind 15-20 Werte die ausgelesen werden sollen.


Wenn ich einfach nur noch mehr .Cells(iRow, nn) hinzufüge werden mir trotzdem maximal 5 Spalten ausgegeben. Die 6. Spalte bleibt leer - auch wenn ich noch 10 Zellen aus dem Formular verlinke.

Ich wollte nun einfach wissen, was ich im Code noch anpassen muss, damit mir mehr Spalten ausgegeben werden.

(10.12.2019, 16:16)Steffl schrieb: [ -> ]Hallo,

ich habe mich bei meinen Vorschlag an den Code von Gast 123 aus diesem Beitrag orientiert und auf deine Antwort darau


das die Logik eine andere ist, wußte ich nicht.

Das war auf das Unterdrücken der Abfrage zum aktualisieren der Blätter bezogen.
Wir sind hier schon an der nächsten Baustelle :D
Hat sich erledigt. Ich habe es geschafft.
Seiten: 1 2