Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
604to608
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Anlegen eines neuen Blattes aus Einzelblättern

Anlegen eines neuen Blattes aus Einzelblättern
01.05.2005 12:11:58
KH
Hallo!
Ich habe ein erstes Tabellenblatt in dem in jeder Zeile Eigenschaften über ein Objekt stehen. Jedes Objekt hat hierbei eine eigene Nummer und weitere teils identische Daten.
Jedes Objekt verfügt über ein weiteres eigenes Tabellenblatt, in dem spezielle objektspezifische Daten aufgelistet sind (sehen für alle Objekte gleich aus).
1. Per Filterfunktion kann man Objekte, welche die gleiche Eigenschaft aufweisen, filtern (ist schon vorhanden). Für alle nun gefilterten Objekte soll ein neues Tabellenblatt erstellt werden, in welchem die Daten der einzelnen Objektblätter kumuliert dargestellt werden. Wie kann man so etwas programmieren?
2. Da die Filterfunktion teilweise nicht ausreicht soll es auch noch die Möglichkeit geben, daß der Benutzer einzelne Objekte markiert und diese dann ebenfalls in einer kumulierten Datei darzustellen.
Es ist zu beachten, daß in das erste Tabellenblatt automatisiert immer wieder neue Objekte aufgenommen werden (eine manuelle Anpassung eines Makros, welches die o. g. Funktionen erfüllt ist deshalb nicht praktikabel).
Danke für die Hilfe!
Viele Grüße,
KH

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Noch eine Ergänzung
01.05.2005 12:17:37
KH
Jedes objektspezifische Tabellenblatt verfügt im Namen über die Nummer, die auch im ersten Tabellenblatt steht.
...was wird das b.noVBA - ein 100ZeilenPgm?! - owT
01.05.2005 21:07:52
Luc:-?
Umgangston
01.05.2005 22:16:14
Boris
Hi Luc,
auch wenn du sicherlich im Kern Recht hast - propagiert wird doch von den meisten Antwortern der Ton, der die sprichwörtliche Musik macht.
Und eine sehr ausführliche Frage mit einer schnodderigen Betreffzeilen-Antwort - auch noch endend mit ?! sowie ohne Anrede und Gruß zu beantworten, halte ich in den rubrizierten Bemühungen um einen guten Umgangston für äußerst kontraproduktiv.
Meine Meinung.
Grüße Boris
...vielen Dank für Deine Belehrung, aber ich...
01.05.2005 22:44:24
Luc:-?
...gehöre hier mit Sicherheit nicht zu denen, die permanent die Etikette missachten! Außerdem, was heißt hier ausführliche Frage? Das sieht eher nach einer Problembeschreibung für eine Auftragsprogrammierung aus! Nimmst du dir die Zeit dich dieses Problems anzunehmen? Ich wollte dem Frager wenigstens andeuten, dass er zur Kenntnis genommen wurde - und da geht's per Betreffzeile nunmal etwas schneller. Alles andere wertet die Antwort unbegründet auf und von den Bemerkungen, die da manchmal in ähnlichen Fällen zu lesen sind, hat der Frager auch nichts. Dann lieber etwas unpersönlicher als Kurzhinweis im Betreff. In der Hauptstadt und Umgebung denkt man halt etwas ökonomischer als in der Provinz.
Mit besonders freundlichen Grüßen an "uns Boris" und den Frager, der so glaube ich, unsere freiwillige Antwortbereitschaft vielleicht doch ein klitzekleines Bisschen überfordern könnte, nicht wahr?!
Luc :-?
Anzeige
AW: ...vielen Dank für Deine Belehrung, aber ich...
01.05.2005 23:00:02
Boris
Hi Luc,
Das sieht eher nach einer Problembeschreibung für eine Auftragsprogrammierung aus!
Ja - das ist es auch.
Nimmst du dir die Zeit dich dieses Problems anzunehmen?
Nein.
Ich wollte dem Frager wenigstens andeuten, dass er zur Kenntnis genommen wurde - und da geht's per Betreffzeile nunmal etwas schneller.
Und genau darum geht´s.
Wenn ich in einem C++Forum ein Frage stellen würde (Null Kenntnisse und demnach Null Ahnung bezüglich Aufwand) und erhielte so eine Antwort - ich würde dieses Forum wahrscheinlich für immer meiden.
Daher kann ich dir hier
Alles andere wertet die Antwort unbegründet auf und von den Bemerkungen, die da manchmal in ähnlichen Fällen zu lesen sind, hat der Frager auch nichts. Dann lieber etwas unpersönlicher als Kurzhinweis im Betreff.
auch überhaupt nicht zustimmen.
Sorry - aber das ist in diesem Fall kein Hinweis, sondern (mein persönliches Empfinden) ein genervter Vorwurf (...was soll das werden...?!) - und das kann es imho eben nicht sein.
Gute Nacht!
Grüße Boris
Anzeige
AW: ...vielen Dank für Deine Belehrung, aber ich...
01.05.2005 23:56:46
KH
Hallo!
Ein paar VBA Kenntnisse hab ich dann doch. Ich hab nur ein Problem damit gleich "Gut" anzugeben, da man m. E. damit schon zu 70% perfekt ist. Und davon bin ich dann doch noch ein ganzes Stück von entfernt.
Vielleicht bekomm ich aber eine Antwort auf diese Frage. Den Rest bekomm ich wohl noch selber hin. Ich durchsuche meine Tabellenblätter nach einem bestimmten Kürzel. Die Namen der gefundenen Blätter werden zwischengespeichert. Bestimmte Felder (nehmen wir an A1 und C3) der gefundenen Blätter sollten jetzt addiert werden und in einem neuen Tabellenblatt (ist aber bereits angelegt) an der selben Stelle (also A1 und C3) ausgegeben werden.
Ich hoffe, daß dies nicht zu umfangreich ist und ich den ein oder anderen Hinweis bekommen werde. Ansonsten wäre eine kurze Nachricht erfreulich.
Viele Grüße,
KH
Anzeige
AW: ...vielen Dank für Deine Belehrung, aber ich...
02.05.2005 00:16:53
Georg
Hi,
sieht immernoch nach einem Programmierauftrag aus, Honorarvorstellungen?
Gruß Georg
Hab das Problem gelöst
02.05.2005 17:33:34
KH
Wenn es interessiert hier mal der Code dazu.

Sub Blaetter_Addieren()
Dim i As Integer
Dim HV As Integer
Dim j As Integer
Dim a As Integer
Dim y As Integer
z = Range("D65536").End(xlUp).Row
For i = 10 To z
Sheets("Eingabe").Select
b = Range("D" & i).Value
If b = "HV S" Then
Objektnummer = Range("A" & i).Value
Sheets("Ausgabe_Sued_GuV").Select
y = Range("IV34").End(xlToLeft).Column
For c = 1 To y
If Objektnummer = Range(Chr(64 + c) & "34") Then
c = 99999
End If
Next c
If c <> 100000 Then
y = Range("IV34").End(xlToLeft).Column
Range(Chr(64 + y + 1) & "34").Select
ActiveCell.FormulaR1C1 = Objektnummer
For a = 1 To 50
For j = 1 To 200
Range(Chr(64 + a) & CStr(j)).Select
ActiveCell.Replace What:="=0+0", Replacement:= _
"=0+0+'Ausgabe_Nr " & Objektnummer & "_GuV'!" & Chr(64 + a) & CStr(j), LookAt:=xlPart, SearchOrder:=xlByRows, _
MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next j
Next a
End If
End If
b = ""
Next i
End Sub

Anzeige
Anmerkung
02.05.2005 18:08:23
Boris
Hi KH,
Range(Chr(64 + c) & "34")
Schau dir in der Hilfe mal die Cells-Eigenschaft an - Cells(Row, Column)
Grüße Boris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige