Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zusammenfassen von Werten

0 views
Skip to first unread message

Jan-Thomas Kühnert

unread,
Jul 23, 2007, 4:18:39 AM7/23/07
to
Hallo,

ich habe eine Arbeitsmappe mit 10 Tabellenblättern. In diesen sind
jeweils die Spalte A mit den X- und die Spalte B mit den Y-Werten
belegt. Ich möchte nun in einem Tabellenblatt alle X- und Y-Wertepaare
untereinander kopieren - auf Knopfdruck. Beim Verwenden des
Makrorekorders stoße ich an meine Grenzen, weil ich die Umsetzung auf
das zyklische Abfragen nicht kann und außerdem nicht immer die gleiche
Zellenzahl belegt ist.

Würde mir bitte jemand helfen - auf die Sprünge?

Gruß,
Jan-Thomas
--
E-Mail bitte an: jthkue bei webpunktde

Claus Busch

unread,
Jul 23, 2007, 4:33:20 AM7/23/07
to
Hallo Jan-Thomas,

Am Mon, 23 Jul 2007 10:18:39 +0200 schrieb Jan-Thomas Kühnert:

> ich habe eine Arbeitsmappe mit 10 Tabellenblättern. In diesen sind
> jeweils die Spalte A mit den X- und die Spalte B mit den Y-Werten
> belegt. Ich möchte nun in einem Tabellenblatt alle X- und Y-Wertepaare
> untereinander kopieren - auf Knopfdruck. Beim Verwenden des
> Makrorekorders stoße ich an meine Grenzen, weil ich die Umsetzung auf
> das zyklische Abfragen nicht kann und außerdem nicht immer die gleiche
> Zellenzahl belegt ist.

folgender Code baut dir das Blatt "Zuammenfassung" an den Anfang deiner
Blätter und kopiert danach die Daten hinein. Falls du auf deinen Blättern
Überschriften haben solltest ändere den Code ab oder melde dich nochmals:
Sub Zusammenfassen()
Dim LRowQ As Long
Dim LRowZ As Long
Dim i As Integer

If Sheets(1).Name = "Zusammenfassung" Then
Sheets(1).UsedRange.Cells.Delete
Else
Sheets.Add before:=Sheets(1)
ActiveSheet.Name = "Zusammenfassung"
End If

For i = 2 To Sheets.Count
LRowZ = Sheets("Zusammenfassung"). _
Cells(Rows.Count, 1).End(xlUp).Row
With Sheets(i)
LRowQ = .Cells(Rows.Count, 1).End(xlUp).Row
.Range("A1:B" & LRowQ).Copy _
Destination:=Sheets("Zusammenfassung"). _
Range("A" & LRowZ + 1)
End With
Next
End Sub


--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2 / Vista Ultimate
Office 2000 SP3 / 2007 Ultimate

Jan-Thomas Kühnert

unread,
Jul 23, 2007, 4:52:46 AM7/23/07
to
Hallo Claus,

vielen Dank für die prompte Antwort. Leider war ich mit meiner
Problembeschreibung mal wieder nicht genau genug.

Den ersten Test hat der Code mit Bravour bestanden!

Am 2007-07-23 10:33 schrieb Claus Busch:
>
> folgender Code baut dir das Blatt "Zuammenfassung" an den Anfang deiner
> Blätter und kopiert danach die Daten hinein. Falls du auf deinen Blättern
> Überschriften haben solltest ändere den Code ab oder melde dich nochmals:

ja, ich habe Überschriften - in der ersten Zeile. Was ich leider auch
vergessen habe - die Y-Werte (Spalte B) sind Ergebnisse von
Berechnungen, es muß also irgendwo noch ein .cells.value() in die Suppe.

Mit freundlichem Gruß,

Claus Busch

unread,
Jul 23, 2007, 4:56:10 AM7/23/07
to
Hallo Jan-Thomas,

Am Mon, 23 Jul 2007 10:52:46 +0200 schrieb Jan-Thomas Kühnert:

> vielen Dank für die prompte Antwort. Leider war ich mit meiner
> Problembeschreibung mal wieder nicht genau genug.

in der Zukunft dann verbessern ;-)

> ja, ich habe Überschriften - in der ersten Zeile. Was ich leider auch
> vergessen habe - die Y-Werte (Spalte B) sind Ergebnisse von
> Berechnungen, es muß also irgendwo noch ein .cells.value() in die Suppe.

dann probiere es so (mit Überschriften):
Sub Zusammenfassen2()


Dim LRowQ As Long
Dim LRowZ As Long
Dim i As Integer

If Sheets(1).Name = "Zusammenfassung" Then
Sheets(1).UsedRange.Cells.Delete
Else
Sheets.Add before:=Sheets(1)
ActiveSheet.Name = "Zusammenfassung"
End If

Sheets(2).Range("A1:B1").Copy _
Destination:=Sheets("Zusammenfassung").Range("A1")


For i = 2 To Sheets.Count
LRowZ = Sheets("Zusammenfassung"). _
Cells(Rows.Count, 1).End(xlUp).Row
With Sheets(i)
LRowQ = .Cells(Rows.Count, 1).End(xlUp).Row

.Range("A2:B" & LRowQ).Copy
Sheets("Zusammenfassung"). _
Range("A" & LRowZ + 1).PasteSpecial _
xlPasteValues

Dieter

unread,
Jul 23, 2007, 5:16:08 AM7/23/07
to
Moin, Moin,
nicht lachen, bin das erste mal hier, und ich hoffe ich komme mit dem
geballten Sachverstand der hier vorliegt weiter.
Also: Mitarbeiter haben Arbeitszeitkonten die je nach Höhe in Abhängigkeit
der wöchentlichen Arbeitszeit einen bestimmten Farbwert annehmen sollen (
siehe Tabelle). Denke da an bedingte Formatierung, komme aber nicht so recht
weiter.
Vielleicht kann mich da jemand unterstützen.


(1) In dem Arbeitszeitkonto werden drei Bereiche unterschieden:

Grüner Bereich
Kräfte >20 Std. durchschn. Wochen-Arb.-Zeit
- 20 bis + 40 Stunden


Kräfte £20 Std. durchschn. Wochen-Arb.-Zeit
- 20 bis + 20 Stunden

Gelber Bereich
Kräfte >20 Std. durchschn. Wochen-Arb.-Zeit
> 41 bis + 80


Kräfte £20 Std. durchschn. Wochen-Arb.-Zeit
> 21 bis + 40 Stunden

Roter Bereich
Kräfte >20 Std. durchschn. Wochen-Arb.-Zeit
> 80 Stunden


Kräfte £20 Std. durchschn. Wochen-Arb.-Zeit
> 40 Stunden


In Excel soll das so ähnlich aussehen.

Vorname Wö.AZ Std.Saldo
Julia 20,00 -9,91
Monika 38,50 32,25
Sandra 38,50 102,00
Andrea 22,00 80,00
Mona 19,00 5,25
Christian 44,00 16,72
Angelika 12,00 14,40
Kathrin 39,00 -27,69


Besten Dank für Eure Unterstützung

Gruß
Dieter Frommholz


Rainer Blum

unread,
Jul 24, 2007, 1:23:36 PM7/24/07
to
Hallo Dieter,

Dieter schrieb:


> Moin, Moin,
> nicht lachen, bin das erste mal hier, und ich hoffe ich komme mit dem
> geballten Sachverstand der hier vorliegt weiter.
> Also: Mitarbeiter haben Arbeitszeitkonten die je nach Höhe in Abhängigkeit
> der wöchentlichen Arbeitszeit einen bestimmten Farbwert annehmen sollen (
> siehe Tabelle). Denke da an bedingte Formatierung, komme aber nicht so recht
> weiter.
> Vielleicht kann mich da jemand unterstützen.

[...]
ich habe hier eine Lösung mit bedingter Formatierung:
Deine Daten beginnen in A1

1 Grün
=ODER(UND($B2>20;UND($C2>=-20;$C2<=40));UND($B2<=20;UND($C2>=-20;$C2<=20)))
2 Gelb
=ODER(UND($B2>20;UND($C2>=41;$C2<=80));UND($B2<=20;UND($C2>=21;$C2<=40)))
3 Rot
=ODER(UND($B2>20;$C2>80);UND($B2<=20;$C2>40))

Deine Bedingungen sind nicht ganz korrekt: Z.B. bis 20 ab 21 und bis 40
ab 41. Habe das jetzt aber nicht geändert.

MfG
Rainer


Dieter

unread,
Jul 24, 2007, 2:25:59 PM7/24/07
to
Hallo Rainer,
besten Dank für die Formeln und den richtigen Hinweis am Ende

Dank und Gruß
Dieter

"Rainer Blum" <r.blum_...@web.de> schrieb im Newsbeitrag
news:46A63598...@web.de...

Rainer Blum

unread,
Jul 25, 2007, 2:18:32 AM7/25/07
to
Hallo Dieter,

Danke für die Rückmeldung.
MfG
Rainer

Jan-Thomas Kühnert

unread,
Jul 26, 2007, 1:50:33 AM7/26/07
to
Hallo Claus,

vielen Dank für die Lösung - funktionert prima.

Gibt es eine Möglichkeit, dies auf zehn Spalten zu erweitern und
trotzdem die Leerzellen zu entfernen?

Claus Busch

unread,
Jul 26, 2007, 5:56:18 AM7/26/07
to
Hallo Jan-Thomas,

Am Thu, 26 Jul 2007 07:50:33 +0200 schrieb Jan-Thomas Kühnert:


> vielen Dank für die Lösung - funktionert prima.

gern geschehen. Freut mich, wenn es nun funktioniert. Danke für die
Rückmeldung.

Mit freundlichen Grüssen
Claus Busch

--

0 new messages