Autor
|
Thema: 3 Tabellen mit Makros vergleichen... (4289 mal gelesen)
|
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 20. Aug. 2007 14:27 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe 3 Tabellen die ich mit Makros vergleichen will, kann mir da jemand helfen? Also in jeder der 3 Tabellen sind gleiche und ungleiche Zeilen und Spalten und wenn in einer Tabelle ein Wert geändert wird, sollen sich die anderen 2 Tabellen, wenn Zeilen und Spalten mit der ersten Tabelle gleich ist, anpassen...also irgenwie so.... if Vergleiche(Tabelle1,Spalte&Zeile mit (Tabelle2,Spalte&Zeile;Tabelle3,Spalte&Zeile ) dann (cange;WERTvon(Tabelle2&Tabelle3)) Weil ich garkeine Ahnung von Makros habe, ist dies natürlich totaler Humbug...wird jeder Programmierer einen Herzinfarkt bekommen (hoffentlich nicht ) Gruß der Falschprogrammierer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hajo_Zi Mitglied Projektant
Beiträge: 479 Registriert: 26.03.2003 AutoCad 2020 (ich arbeite in 2D) Betriebssystem Windows 10
|
erstellt am: 20. Aug. 2007 15:38 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
|
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 20. Aug. 2007 16:33 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
|
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 23. Aug. 2007 10:29 <-- editieren / zitieren --> Unities abgeben:
Hallo erstmal und danke für die Antworten, ...mmmmhhhh...weiß nicht genqau wie ich mein Problem genauer beschreiben soll, aber ich versuchs mal... Tabelle 1 __________Länge______Breite_______Höhe Version 1__1__________1___________1 Version 2__999________1___________1 Version 3 __1__________1___________1 Version 4 __1__________1___________1 Tabelle 2 _____________Tiefe_______Länge________Durchmesser Version 1.1____2__________2____________2 Version 1.2____2__________2____________2 Version 2______2__________999__________2 Version 2.1____2__________2____________2 Wie man in den 2 Tabellen sieht sind die Zahlen 999 in der gleichen Zeile und Spalte...ich habe zwar 3 Tabellen aber dieses Beispiel soll mein Problem vereinfacht darstellen...also wenn man in Tabelle die 999 einträgt, sollen Makros die Zeilen und Spalten aus Tabelle 2 vergleichen und den Wert automatisch auf 999 ändern. Das gleiche soll aber auch Tabelle 1 tun, wenn ein Wert in Tabelle 2 geändert wird (in meinem Falle auch Tabelle 3) .
@Paulchen Also die Lösung muss nicht umbedingt mit Makros geschrieben werden, habe aber erfahren, dass dies nur mit Makros zu Lösen sei....bin aber über neue Ideen sehr aufgeschlossen... Gruß Flo
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 23. Aug. 2007 11:47 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hey Flo, Danke für's Verdeutlichen! Du kannst auch Bilder und Mappen anhängen - dann sparst Du Dir die (sicher sehr aufwändige) Formatierung . Zitat: Wie man in den 2 Tabellen sieht sind die Zahlen 999 in der gleichen Zeile und Spalte
Nein - sind sie nicht! Sie sind vielleicht den gleichen Zeilen- und Spaltenüberschriften ("Version 2", "Länge") zugeordnet; so, wie Du es darstellst, sind es aber durchaus unterschiedliche Spalten (außer, Du hast in Tab. 1 'ne Spalte ausgeblendet)? Spielt zwar hier vermutlich keine große Rolle, aber naja... SCNR Zitat: Das gleiche soll aber auch Tabelle 1 tun, wenn ein Wert in Tabelle 2 geändert wird...
Jupp, das geht nur mit Makros - Du würdest ja sonst vorhandene Formeln überschreiben. Mit "Bordmitteln" - also ohne VBA - ginge es nur in eine Richtung - Du willst ja beide . Und es müssen auch tatsächlich drei Mappen sein - also sind unterschiedliche Register ( Tabellen) in einer Datei ist keine Lösung? (Entschuldige die Frage, aber diese feine Unterscheidung kann durchaus eine Rolle spielen...) Frederik ------------------ DIN1055.de | Lastannahmen für Anwender Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 23. Aug. 2007 12:30 <-- editieren / zitieren --> Unities abgeben:
Hi Frederik, brauchst dich nicht für die Fragen zu entschuldigen, das zeigt ja nur dein Interesse... Zitat: Nein - sind sie nicht! Sie sind vielleicht den gleichen Zeilen- und Spaltenüberschriften ("Version 2", "Länge") zugeordnet; so, wie Du es darstellst, sind es aber durchaus unterschiedliche Spalten (außer, Du hast in Tab. 1 'ne Spalte ausgeblendet)? Spielt zwar hier vermutlich keine große Rolle, aber naja... SCNR
Natürlich, das meinte ich doch. Die 3 Tabellen sehen ja nicht exakt gleich aus, dann bräuchte ich sie ja nicht miteinander zu vergleichen...Sorry für das Missverständnis!!! Trotzdem haben die 3 Tabellen gleiche und ungleiche Spalten und Zeilen. Und deshalb brauche ich einen Makrocode, von dem ich leider keine Ahnung habe... Zitat: Und es müssen auch tatsächlich drei Mappen sein - also sind unterschiedliche Register (Tabellen) in einer Datei ist keine Lösung?
Also es kann auch eine Mappe (1 Datei) mit 3 Sheets sein...wäre sogar vom Vorteil... Danke fürs Interesse Gruß Flo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 23. Aug. 2007 16:27 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Zitat: Die 3 Tabellen sehen ja nicht exakt gleich aus, dann bräuchte ich sie ja nicht miteinander zu vergleichen
Hmja, da hast Du mal völlig Recht , hätte mir auffallen sollen ... Denke schon, daß da mit VBA was zu machen wäre. Ich komm' bloß leider nicht dazu; vielleicht hat einer der Profis hier schon was "fertig" ? Vergnügter Gruß, Frederik ------------------ DIN1055.de | Lastannahmen für Anwender Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LaBonita Mitglied Dipl.-Math.
Beiträge: 151 Registriert: 26.07.2007 eM-Plant 7.5 bis 8.1 VB Java C#
|
erstellt am: 23. Aug. 2007 17:34 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo Flo, ich habe diesen Dialog jetzt schon ein wenig verfolgt. Frederik hat mit seinen Anmerkungen völlig Recht - das Problem ist mit den nicht VBA Methoden von Excel nicht zu lösen. Du musst also auf Makros zurück greifen. Das birgt allerdings bei der Beschreibung, die Du gegeben hast, auch noch Probleme: Nimm an Du hast 3 Tabellen, die alle eine Zelle haben, die die gleich Zuordnung hat (Version und Länge), wenn jetzt in einer Tabelle ein Wert verändert wird - woher soll das Makro wissen, welcher Wert geändert wurde und welcher noch alt ist. Außerdem besteht die Möglichkeit, dass an verschiedenen Stellen gleichzeitig geändert wird und dann kann das Makro gar nicht mehr wissen, was ist Original und was ist Fälschung. Hast Du Dir hierzu schon einmal etwas überlegt? Muss überhaupt in jeder von den drei Sheets geändert werden dürfen? Du könntest ja evtl. auch gleiche Zeilen in zwei von den drei Tabellen zur Eingabe sperren und nur in einer Änderungen zulassen, die dann in die anderen übertragen werden. Übrigens: Das geht wieder mit den Standardhilfsmitteln von Excel, also auch ohne VBA. Ich vermute, dass Du alle drei Sheets brauchst, um jeweils unterschiedliche Daten zu halten, aber ebenfalls gemeinsame Zuordnungen zu erlauben. Habe ich das richtig verstanden? Gruß, Ortrun Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 24. Aug. 2007 09:49 <-- editieren / zitieren --> Unities abgeben:
Hallo Ortrun, ja ich habe 3 Tabellen die mehrere gleiche Spalten haben...also du hast ja ganz schön viele Fragen...ich hoffe dass ich sie alle beantworten kann. Zitat: wenn jetzt in einer Tabelle ein Wert verändert wird - woher soll das Makro wissen, welcher Wert geändert wurde und welcher noch alt ist
ich habe jetzt z.B. einen neuen Wert für die Spalte Länge und dort trage ich, egal in welcher Tabelle, den neuen Wert ein und die beiden anderen Tabellen müssen diesen (neuen) Wert annehmen, dass heisst dieser Wert der neu reingeschrieben wird ist der neue Wert. Zitat: Außerdem besteht die Möglichkeit, dass an verschiedenen Stellen gleichzeitig geändert wird und dann kann das Makro gar nicht mehr wissen, was ist Original und was ist Fälschung.
ich habe nicht gewusst, dass man in Excel in 2 Zeilen auf einmal etwas ändern kann!? Ich denke dass meinst du auch nicht oder!? Sobald ein Wert geändert wurde ist dieser Bearbeitet und der nächste Wert kann eingetragen werden...also muss das Makro die ganze Zeit im Hintergrund laufen, ich glaube dieses schreibt man mit (privat) bin mir aber nicht sicher, und die 3 Tabellen miteinander vergleichen und ändern...meintest du das? Zitat: Muss überhaupt in jeder von den drei Sheets geändert werden dürfen?
Ja es sollte in jedem sheet etwas ändern dürfen...das heisst man braucht 1 Makro pro sheet...denke ich. Es kann aber auch passieren, dass sich die eine oder andere Tabelle erweiter, 1 Zeile bzw. Spalte hinzukommt. Ich glaube schon alleine deshlab kann man keinen Verweis mit Formeln schreiben, denn wenn eine Spalte in der Mitte eingefügt wird, bringt das ja die ganze Tabelle durcheinander... Zitat: Du könntest ja evtl. auch gleiche Zeilen in zwei von den drei Tabellen zur Eingabe sperren und nur in einer Änderungen zulassen, die dann in die anderen übertragen werden.
mmmhhh....nein, es sollten keine Zeilen gesperrt werden, den in jeder Tabelle sollte man etwas ändern können...ich weiß es ist blöd, du fragst dich bestimmt warum ich nicht die Daten welche gleich sind zu einer Tabelle zusammen fasse....leider brauche ich 3 Tabellen in der gleiche Daten als auch ungleiche Daten beinhaltet sind, damit man immer einen direkten Vergleich hat. @ Frederik...kein Problem hast mir trotzdem geholfen und vielleicht wirst du diesem Beitrag ja noch ein wenig folgen... Gruß Flo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LaBonita Mitglied Dipl.-Math.
Beiträge: 151 Registriert: 26.07.2007 eM-Plant 7.5 bis 8.1 VB Java C#
|
erstellt am: 24. Aug. 2007 11:04 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo Flo, das sind schwierige Bedingungen, die Du hier schaffst. Prinzipiell läßt sich mit Excel ein Makro programmieren, dass in allen drei Sheets schaut, ob es Zellen mit denselben Überschriften findet. Wenn da dann noch zweimal der gleiche und einmal ein anderer Wert drin steht, dann kann man auch die bisher gleichen Zellen ändern. Das bedeutet aber, dass zwingend immer drei Werte vorhanden sein müssen. Wenn Du einen Wert, den Du global ändern willst nur in zwei Sheets drin hast, dann weiss das Makro nicht was alt und was neu ist - außer Du schaffst es, ihm noch zu sagen, welche Zelle gerade verändert worden ist. Anyway - das ist keine wirklich einfache Aufgabe (zumindest mit Deinen Einschränkungen). Zitat: ich habe nicht gewusst, dass man in Excel in 2 Zeilen auf einmal etwas ändern kann!? Ich denke dass meinst du auch nicht oder!? Sobald ein Wert geändert wurde ist dieser Bearbeitet und der nächste Wert kann eingetragen werden...also muss das Makro die ganze Zeit im Hintergrund laufen, ich glaube dieses schreibt man mit (privat) bin mir aber nicht sicher, und die 3 Tabellen miteinander vergleichen und ändern...meintest du das?
Makros werden soweit ich sie bisher verwendet habe, gezielt gestartet um ganz bestimmte Aufgaben auszuführen. Also ich muss ganz ehrlich sagen, ob man mit Excel noch arbeiten kann, wenn ständig ein Makro im Hintergrund läuft, kann ich nicht sagen. Ob die Möglichkeit besteht, ein Makro so zu programmieren, dass es nur gestartet wird, wenn in einer Zelle etwas geändert worden ist, weiß ich so auf Anhieb auch nicht. Vielleicht kann zu dem Thema jemand etwas sagen, der da mehr Erfahrung hat. So im ersten Ansatz würde ich das erst mal lassen, da ich die Befürchtung hätte, dass die ganze Tabelle dann nicht mehr zu benutzen ist. Wenn das Makro also nicht ständig läuft können durchaus mehrere Zellen geändert werden, bevor jemand das Makro aktiviert. Leider muss eine Eingabe in einer Zelle ja auch nicht immer mit ENTER abgeschlossen werden, sonst könnte man ein Makro evtl. warten lassen, bis die ENTER Taste gedrückt worden ist. Da weiß ich im Moment keine Lösung für... Sorry!!! Zitat: mmmhhh....nein, es sollten keine Zeilen gesperrt werden, den in jeder Tabelle sollte man etwas ändern können...ich weiß es ist blöd, du fragst dich bestimmt warum ich nicht die Daten welche gleich sind zu einer Tabelle zusammen fasse....leider brauche ich 3 Tabellen in der gleiche Daten als auch ungleiche Daten beinhaltet sind, damit man immer einen direkten Vergleich hat.
Wäre es so schlimm, wenn du die gemeinsamen Daten in ein Blatt reinsteckst, in dem diese geändert werden können und in den anderne Blättern werden die aktuellen Daten dann nur angezeigt? Das wäre doch vielleicht eine Lösung, die praktikabel ist. Du kannst dann in jedem Blatt die dort spezifischen Daten ändern und hast noch ein weiteres in dem die globalen Daten gehalten werden. Lass es Dir vielleicht mal durch den Kopf gehen, ob das ein Weg wäre. Gruß, Ortrun Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 24. Aug. 2007 11:50 <-- editieren / zitieren --> Unities abgeben:
Hallo Ortrun, ich glaube du hast mich falsch verstanden...oder ich dich... also es soll nur die Überschrift und der Zeilenrand geprüft werden, in meinem Fall "Länge" und "Version2", es soll prüfen ob es diese Felder auch in den anderen Tabellen gibt. So nun ändere ich in diesem Feld, wo sich das Feld "Länge" mit dem Feld "Version2" schneidet, die Zahl von X auf 999...jetzt soll das Makro Arbeiten und prüfen. Gibts es nun z.B. "Länge" in Spalte "F" und "Version2" in Zeile 10, dann soll der Wert im Feld "F10" auf 999 geändert werden.... ...also ich hab zwar keine von Makros, aber das hört sich doch nicht soooo schwierig an oder? Wenn es natürlich einfach wäre, würde ich keine Hilfe brauchen... ...es sind doch aber nur einfache Anweisungen. Wenn Spalte&Zeile = Spalte&Zeile aus (Tabelle1 bzw. Tabelle2) dann ändere Wert......oder ist es wirklich komplizierter? Gerade wegen den sheets? Will mich nicht über dich lächerlich machen, im Gegenteil!!! Ich denke nur dass es schwierigere Aufgaben gibt oder ich verstehe wirklich nichts von alle dem!!! Zitat: Wäre es so schlimm, wenn du die gemeinsamen Daten in ein Blatt reinsteckst, in dem diese geändert werden können und in den anderne Blättern werden die aktuellen Daten dann nur angezeigt? Das wäre doch vielleicht eine Lösung, die praktikabel ist. Du kannst dann in jedem Blatt die dort spezifischen Daten ändern und hast noch ein weiteres in dem die globalen Daten gehalten werden. Lass es Dir vielleicht mal durch den Kopf gehen, ob das ein Weg wäre.
Ja das habe ich mir schonmal durch den Kopf gehen lassen...mit einem 4 sheet, indem alle Spalten drin sind, aber das hätte ich wiederum auch nur mit Formeln gelöst. =Tabelle1! <--- irgendwie so... der Nachteil wäre dann aber, dass man die Tabellen nicht mehr erweitern kann. Schon aber dann nur nach unten oder nach rechts...oder wie siehst du das? Vielen vielen Dank Ortrun...auch wenn du mir nicht weiterhelfen kannst bin ich dir sehr dankbar für deine Hilfe!!! Gruß der Verzweifelte Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LaBonita Mitglied Dipl.-Math.
Beiträge: 151 Registriert: 26.07.2007 eM-Plant 7.5 bis 8.1 VB Java C#
|
erstellt am: 24. Aug. 2007 14:19 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo Flo, ich glaube nicht, dass wir prinzipiell aneinander vorbei reden. Ein Makro kann nur das tun, was Du in der Lage bis ihm zu sagen, was es tun soll. Ich beschreibe jetzt mal eine Konstellation, die mit Makro meineserachtens funktionieren würde (allerdings nicht vollautomatisch - wenn da jemand noch ein Lösung weiß, wäre ich für jeden Hinweis dankbar): Zunächst erläutere ich meine Annahmen: 1) Jede Zelle, die Mittels des Makros bearbeitet werden soll, kommt in jedem der drei Tabellenblätter vor 2) Das Makro wird jedesmal gestartet, wenn eine Zelle verändert worden ist 3) Wenn das Makro 3 zueinander gehörende Zellen findet (drei identische Überschriften in allen Tabellenblättern), dann werden die aktuellen Zellwerte miteinander verglichen 4) Sind alle Zellwerte gleich: nichts tun 5) Sind alle Zellwerte verschieden: Fehlermeldung ausgeben - hier ist etwas nicht korrekt gelaufen 6) Wenn zwei Werte gleich ist und einer anders, dann werden alle Werte auf den einzelnen geändert Wenn das dem entspricht, was Du möchtest, dann läßt sich das realisieren. Schau mal das Bild an und importier den Code und lass dann die sub checkValues laufen. Vielleicht ist das so, wie Du Dir das vorstellst - allerdings reagiert das nicht automatisch auf Eingaben!!! Wirst aber vermutlich noch die ein oder andere Anpassung machen müssen Gruß, Ortrun P.S.: Ops - Bild vergessen - nachgeliefert... Die anderen Tabs sind erst mal leere Kopien des ersten Tabs ;-) Code: Sub checkValues() Dim indX1, indY1, indX2, indY2, indX3, indY3 As Integer Dim value1, value2, value3, valueX, valueY, t As VariantindX1 = 0 'Spaltenoffset für erstes Tabellenblatt indY1 = 0 'Zeilenoffset für erstes Tabellenblatt indX2 = 0 'Spaltenoffset für zweites Tabellenblatt indY2 = 0 'Zeilenoffset für zweites Tabellenblatt indX3 = 0 'Spaltenoffset für zweites Tabellenblatt indY3 = 0 'Zeilenoffset für erstes Tabellenblatt Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("B1").Activate ActiveCell.Offset(0, indX1).Activate valueX = ActiveCell.value Do While ActiveCell.value <> "" ' Schleife für Spaltenindex indY1 = 0 'Zeilenoffset für erstes Tabellenblatt Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("A2").Activate ActiveCell.Offset(indY1, 0).Activate valueY = ActiveCell.value Do While ActiveCell.value <> "" ' Schleife für Zeilenindex indX2 = findIndexX("Tabelle2", valueX) If indX2 = -1 Then ' index nicht gefunden Exit Do End If indY2 = findIndexY("Tabelle2", valueY) If indY2 = -1 Then ' index nicht gefunden Exit Do End If indX3 = findIndexX("Tabelle3", valueX) If indX3 = -1 Then ' index nicht gefunden Exit Do End If indY3 = findIndexY("Tabelle3", valueY) If indY3 = -1 Then ' index nicht gefunden Exit Do End If ' hole Werte und vergleiche value1 = getV("Tabelle1", indX1, indY1) value2 = getV("Tabelle2", indX2, indY2) value3 = getV("Tabelle3", indX3, indY3) If ((value1 <> value2) _ And (value1 <> value3) _ And (value2 <> value3)) Then Exit Do End If If value1 = value2 Then ' neuer Wert ist drittes Blatt t = setV("Tabelle1", indX1, indY1, value3) t = setV("Tabelle2", indX2, indY2, value3) ElseIf value1 = value3 Then ' neuer Wert ist zweites Blatt t = setV("Tabelle1", indX1, indY1, value2) t = setV("Tabelle3", indX3, indY3, value2) ElseIf value2 = value3 Then ' neuer Wert ist erstes Blatt t = setV("Tabelle2", indX2, indY2, value1) t = setV("Tabelle3", indX3, indY3, value1) End If indY1 = indY1 + 1 Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("A2").Activate ActiveCell.Offset(indY1, 0).Activate valueY = ActiveCell.value Loop indX1 = indX1 + 1 Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("B1").Activate ActiveCell.Offset(0, indX1).Activate valueX = ActiveCell.value Loop End Sub Function findIndexX(ByVal s As String, ByVal value As Variant) As Integer Dim ind As Integer Sheets(s).Activate Sheets(s).Range("B1").Activate ActiveCell.Offset(0, ind).Activate Do While ActiveCell.value <> "" ' Schleife für Spaltenindex If ActiveCell.value = value Then findIndexX = ind Exit Function End If ind = ind + 1 Sheets(s).Activate Sheets(s).Range("B1").Activate ActiveCell.Offset(0, ind).Activate Loop findIndexX = -1 End Function Function findIndexY(ByVal s As String, ByVal value As Variant) As Integer Dim ind As Integer Sheets(s).Activate Sheets(s).Range("A2").Activate ActiveCell.Offset(ind, 0).Activate Do While ActiveCell.value <> "" ' Schleife für Spaltenindex If ActiveCell.value = value Then findIndexY = ind Exit Function End If ind = ind + 1 Sheets(s).Activate Sheets(s).Range("A2").Activate ActiveCell.Offset(ind, 0).Activate Loop findIndexY = -1 End Function Function getV(ByVal s As String, ByVal indX As Integer, ByVal indY As Integer) As Variant Sheets(s).Activate Sheets(s).Range("A1").Activate ActiveCell.Offset(indY + 1, indX + 1).Activate getV = ActiveCell.value End Function Function setV(ByVal s As String, ByVal indX As Integer, ByVal indY As Integer, ByVal value As Variant) As Variant Sheets(s).Activate Sheets(s).Range("A1").Activate ActiveCell.Offset(indY + 1, indX + 1).Activate ActiveCell.value = value setV = value End Function
[Diese Nachricht wurde von LaBonita am 24. Aug. 2007 editiert.] und gleich noch die Tippfehler korrigiert... [Diese Nachricht wurde von LaBonita am 24. Aug. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 24. Aug. 2007 15:17 <-- editieren / zitieren --> Unities abgeben:
Wow super danke es tut sich was... leider aber nicht das was ich genau wollte... Zitat: 1) Jede Zelle, die Mittels des Makros bearbeitet werden soll, kommt in jedem der drei Tabellenblätter vor
nein, jede Zelle die bearbeitet werden soll, muss mindestens in 2 Tabellenblätter vorkommen, also natürlich in dem welches gerade bearbeitet wird und in mindestens einem der 2 anderen Tabellen... Zitat: 2) Das Makro wird jedesmal gestartet, wenn eine Zelle verändert worden ist
Ja... Zitat: 3) Wenn das Makro 3 zueinander gehörende Zellen findet (drei identische Überschriften in allen Tabellenblättern), dann werden die aktuellen Zellwerte miteinander verglichen
nein...ist das nicht ähnlich wie bei dem 1. Punkt? Es müssen ausschliesslich 2 Tabellen verglichen werden, denn sonst Stopt das Makro sobald es keine 3 übereinstimmenden Überschriften gibt. Aber ich habe eine Tabelle da gibt es Version1, Version2, Version3, Version4 in der nächsten habe ich Version1, Verion2, aber in der anderen habe ich wiederum Version2, Version3...wie du hier siehst Habe ich Version1 nur in 2 Tabellen, trotzdem soll die andere Tabelle den neuen Wert übernehmen... Zitat: 4) Sind alle Zellwerte gleich: nichts tun
mmmhhh...denke schon Zitat: 5) Sind alle Zellwerte verschieden: Fehlermeldung ausgeben - hier ist etwas nicht korrekt gelaufen
was heisst alle verschieden? Der Wert welcher gerade geschrieben wurde, soll in den 2 anderen Tabellen eingebaut werden, sofern mindestens 1 der anderen Tabellen die gleiche Spalte hat. Egal was drin stand... Zitat: 6) Wenn zwei Werte gleich ist und einer anders, dann werden alle Werte auf den einzelnen geändert
ich denke die Antwort steckt in der Antwort von Punkt 5... Also ich denke ich Verstehe jetzt warum dieses Makro so schwierig ist...das Makro überpfrüft gleichzeitig 3 Tabellen, wobei es nicht weiß welches die aktuelle Version ist...ich denke das kann man nur lösen indem man 3 Makros für jeweils 1 Tabelle schreibt, den für jedes Tabellenbezogene Makro ist die Tabelle welche gerade offen ist, die aktuelle Tabelle....also hat man 3 Makros mit dem gleichen Code, nur muss man von Tabelle zu Tabelle die Priorität ändern...in Tabelle1 soll nur Tabelle1 mit Tabelle2 und Tabelle3 geprüft werden, nicht Tabelle2 mit Tabelle3. In Tabelle2 soll nur Tabelle2 mit Tabelle1 und Tabelle3 geprüft werden, nicht Tabelle1 mit Tabelle3. Tabelle 3 genauso ....Ohje ich glaub ich blick da selber net mehr durch!!!! Aber super Code, bin dir echt Dankbar....bin erst wieder am Mittwoch in diesem Forum und ich freu mich schon auf deine Antwort...also schönes We wünsch ich dir und allen die diesem Beitrag interessiert folgen. Gruß Flo
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LaBonita Mitglied Dipl.-Math.
Beiträge: 151 Registriert: 26.07.2007 eM-Plant 7.5 bis 8.1 VB Java C#
|
erstellt am: 24. Aug. 2007 15:40 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo Flo, Zitat: Also ich denke ich Verstehe jetzt warum dieses Makro so schwierig ist...das Makro überpfrüft gleichzeitig 3 Tabellen, wobei es nicht weiß welches die aktuelle Version ist...ich denke das kann man nur lösen indem man 3 Makros für jeweils 1 Tabelle schreibt, den für jedes Tabellenbezogene Makro ist die Tabelle welche gerade offen ist, die aktuelle Tabelle....also hat man 3 Makros mit dem gleichen Code, nur muss man von Tabelle zu Tabelle die Priorität ändern...in Tabelle1 soll nur Tabelle1 mit Tabelle2 und Tabelle3 geprüft werden, nicht Tabelle2 mit Tabelle3. In Tabelle2 soll nur Tabelle2 mit Tabelle1 und Tabelle3 geprüft werden, nicht Tabelle1 mit Tabelle3. Tabelle 3 genauso
Jetzt reden wir eine Sprache!!! Genau das ist das Problem, das ich die ganze Zeit versucht habe Dir zu erläutern. Die Subs und Funktionen, die ich Dir geschrieben habe, eignen sich aber auch, um drei Makros zu bauen, die Du dann wieder mit Buttons auf der entsprechenden Seite verbinden könntest, um sie direkt ansprechen zu können. Da gibt es glaube ich auch die Möglichkeit, zu prüfen, was das aktuelle Blatt (vermutlich mit ActualWorksheet oder so) ist und wenn es nicht das für das gewünschte Makro (Vergleich zwischen ActualWorksheet und dem im Makro verwendeten Worksheet) ist, kann man die Ausführung auch abbrechen. Wenn Du diesen Weg gehen möchtest, dann probier mal aus, was Du brauchen kannst und viel Erfolg!!! Gruß, Ortrun Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
Beiträge: 1227 Registriert: 19.08.2004 Büro: Win10 Enterprise 64bit, Office Professional Plus 2013 - Privat: Linux Mint 15, LibreOffice
|
erstellt am: 24. Aug. 2007 15:46 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo zusammen, ich lese noch mit - ansonsten bin ich 'raus (weil überfordert ). Zu Ortruns Gedankengang: Zitat: Ob die Möglichkeit besteht, ein Makro so zu programmieren, dass es nur gestartet wird, wenn in einer [bestimmten?!] Zelle etwas geändert worden ist...
könnte dieser Beitrag helfen?! Allerdings sollten die Bedenken von LaBonita (xls wird langsam etc) ernst genommen werden. Hm Ich überlege gerade, ob es sich tatsächlich um ein inhaltliches Problem handelt? Wohl kaum; es dürfte doch reichen, wenn die Werte ein einziges Mal vorhanden sind?! Der Rest ist dann nur eine Frage der Darstellung. So, und da ich definitiv am Fr. nachmittag zu langsam bin, hat sich das mit Flos und Ortruns Antwort überschnitten. Es ist nicht Sinn und Zweck dieses Forums, nach dem Motto: "Ich sag' euch, was ich brauche, und jetzt macht mal bitte!" vorzugehen. Tips zu konkreten Fragen - Ja. Hilfestellung bei speziellen Problemen - Ja. Musterlösung stricken lassen - NEIN! Es gibt Menschen, die bestreiten damit ihren Lebensunterhalt . LaBonita gibt sich reichlich Mühe und investiert 'ne Menge Zeit; da Du von Makros "keine Ahnung" hast, finde ich es etwas dekadent, ohne eigenes Zutun Sonderwünsche zu äußern. Nimm es bitte nicht persönlich; andere lesen das hier evtl. auch und sollten nicht auf dumme Gedanken kommen . Mein "finaler" Vorschlag: Angenommen, Tab1 ist diejenige, welche "gepflegt" wird, die anderen beiden dienen nur zum "Nachschauen" (hier kann nichts geändert werden). Richte Dir Deine Zeilen und Spalten so ein, wie Du sie brauchst (und schieb' doch bitte mal 'ne kleine Beispielmappe 'rauf - einfach an Mappe.xls ein .txt anhängen, und ab) und schreib' einfach in Tab2 "=Tab1!A1" 'rein. Also bastle so 'ne Art "Muster" IST - SOLL? Zitat: Ja das habe ich mir schonmal durch den Kopf gehen lassen...mit einem 4 sheet, indem alle Spalten drin sind, aber das hätte ich wiederum auch nur mit Formeln gelöst. =Tabelle1! <--- irgendwie so... der Nachteil wäre dann aber, dass man die Tabellen nicht mehr erweitern kann. Schon aber dann nur nach unten oder nach rechts...oder wie siehst du das?
Das geht - mit Zeilen/Spalten einfügen?! Vielleicht kommst Du von dem Gedanken weg, drei Register bearbeiten und vergleichen zu wollen, d.h. Du müßtest Deine gedankliche Basis ändern. Manchmal führen verschiedene Wege zum Ziel, wie auch Dein Gedankengang und Ortruns Vorschlag bereits aufzeigen. Meine große Frage: Wofür brauchst Du das eigentlich (Ziel)? Bin gespannt, was es denn nun wird. Nix für ungut, erholsames Wochende! Frederik ------------------ DIN1055.de | Lastannahmen für Anwender Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 30. Aug. 2007 12:29 <-- editieren / zitieren --> Unities abgeben:
Hallo La Bonita, ich glaube ich habs...fast. Dein Code den du mir geschrieben hast ist sehr, sehr gut!!! Nur hast du über 10 Ecken gedacht (Kommt wahrscheinlich daher, dass du Mathematikerin bist!!! ) Ich habe den Code überarbeitet, aber da ich "keine Ahnung" (sehr Richtig Paulchen ) vom Programmieren habe, musste ich einfach alles austesten...also habe ich einen Teil aus deinem Code gelöscht und ihn ausgeführt und das immer wieder bis er soweit funktioniert. Das klappte auch ganz gut, nur habe ich jetzt einen kleinen Bug...ich will nicht unverschämt und aufdringlich sein, keineswegs!!!! @Paulchen: ich habe mich in Foren bis zum nicht mehr funktionieren meiner Maus durcheklickt und nichts gefunden was mir bei meinem Problem helfen konnte!!! Ich bin allen überaus dankbar die mir bei meinem Problem helfen (besonders La Bonita!!! & schmatz ) wollen...ich zwinge niemanden mir zu helfen, alles ist Freiwillig wie du auch siehst Paulchen...ich wäre auch mit weniger überaus dankbar gewesen!!! Ich habe mir halt erhofft einen kleinen Ansatz von jemanden zu bekommen....ich hatte Glück und traf auf "La Bonita"!!! Sie hat mir einen kompletten Quelltext geschrieben. Ich weiß das, aber ich habe das Nicht verlangt Paulchen!!!! Also zu dem Bug: Ich habe den Quellcode soweit verändert, dass er macht was ich will. Er läuft weiter, auch wenn eine Spalte Tab1 und Tab2 und nicht in Tab3 enthalten ist. Er läuft auch weiter, wenn ein Wert in Tab2 & Tab3 nicht übereinstimmt und wird überschrieben. Wenn, aber die Überschrift z.B. nicht in Tab3 enthalten ist, wird die Spalte einfach in die erste Spalte geschrieben und wenn auch schon Werte drin stehen sollten, werden diese überschrieben...(siehe Anhang 1) Dein geschriebener und von mir überarbeiteter Quelltext...oder von mir vergewaltigt... Code:
Sub checkValues() Dim indX1, indY1, indX2, indY2, indX3, indY3 As Integer Dim value1, valueX, valueY, t As Variant indX1 = 0 'Spaltenoffset für erstes Tabellenblatt indY1 = 0 'Zeilenoffset für erstes Tabellenblatt indX2 = 0 'Spaltenoffset für zweites Tabellenblatt indY2 = 0 'Zeilenoffset für zweites Tabellenblatt indX3 = 0 'Spaltenoffset für zweites Tabellenblatt indY3 = 0 'Zeilenoffset für erstes TabellenblattSheets("Tabelle1").Activate Sheets("Tabelle1").Range("B1").Activate ActiveCell.Offset(0, indX1).Activate valueX = ActiveCell.value Do While ActiveCell.value <> "" ' Schleife für Spaltenindex indY1 = 0 'Zeilenoffset für erstes Tabellenblatt Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("A2").Activate ActiveCell.Offset(indY1, 0).Activate valueY = ActiveCell.value Do While ActiveCell.value <> "" ' Schleife für Zeilenindex indX2 = findIndexX("Tabelle2", valueX) If indX2 = -1 Then ' index nicht gefunden Exit Do End If indY2 = findIndexY("Tabelle2", valueY) If indY2 = -1 Then ' index nicht gefunden Exit Do End If indX3 = findIndexX("Tabelle3", valueX) If indX3 = -1 Then ' index nicht gefunden Exit Do End If indY3 = findIndexY("Tabelle3", valueY) If indY3 = -1 Then ' index nicht gefunden Exit Do End If ' hole Werte value1 = getV("Tabelle1", indX1, indY1) If value1 = value1 Then ' Werte in alle Blätter einsetzten t = setV("Tabelle2", indX2, indY2, value1) t = setV("Tabelle3", indX3, indY3, value1) End If indY1 = indY1 + 1 Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("A2").Activate ActiveCell.Offset(indY1, 0).Activate valueY = ActiveCell.value Loop indX1 = indX1 + 1 Sheets("Tabelle1").Activate Sheets("Tabelle1").Range("B1").Activate ActiveCell.Offset(0, indX1).Activate valueX = ActiveCell.value Loop End Sub Function findIndexX(ByVal s As String, ByVal value As Variant) As Integer Dim ind As Integer Sheets(s).Activate Sheets(s).Range("B1").Activate ActiveCell.Offset(0, ind).Activate Do While ActiveCell.value <> "" ' Schleife für Spaltenindex If ActiveCell.value = value Then findIndexX = ind Exit Function End If ind = ind + 1 Sheets(s).Activate Sheets(s).Range("B1").Activate ActiveCell.Offset(0, ind).Activate Loop End Function Function findIndexY(ByVal s As String, ByVal value As Variant) As Integer Dim ind As Integer Sheets(s).Activate Sheets(s).Range("A2").Activate ActiveCell.Offset(ind, 0).Activate Do While ActiveCell.value <> "" ' Schleife für Spaltenindex If ActiveCell.value = value Then findIndexY = ind Exit Function End If ind = ind + 1 Sheets(s).Activate Sheets(s).Range("A2").Activate ActiveCell.Offset(ind, 0).Activate Loop End Function Function getV(ByVal s As String, ByVal indX As Integer, ByVal indY As Integer) As Variant Sheets(s).Activate Sheets(s).Range("A1").Activate ActiveCell.Offset(indY + 1, indX + 1).Activate getV = ActiveCell.value End Function Function setV(ByVal s As String, ByVal indX As Integer, ByVal indY As Integer, ByVal value As Variant) As Variant Sheets(s).Activate Sheets(s).Range("A1").Activate ActiveCell.Offset(indY + 1, indX + 1).Activate ActiveCell.value = value setV = value End Function
Wäre für einen Tipp über den Bug dankbar... PS: @Paulchen: Ich bin Werkstudent in einer Firma und da ich mich für Excel Interessiere, habe ich mich dieser Aufgabe entgegengestellt...leider auch recht schnell fast Aufgegeben. Da man es vergessen kann in wenigen Tagen ein VBA Crak zu werden, musste ich ein Forum um Hilfe Bitten..(bin froh hier geladet zu sein!!!).Ich werde mich auch nicht mit Fremden Federn schmücken!!! Ich werde sagen, dass ich Hilfe bekommen habe und Foren dieser Art hochloben!!! Es bringt mir auch nichts zu sagen dass ich den Code geschrieben habe, denn dann erwartet man solches von mir und ich stehe bei der nächsten Aufgabe aufm Schlauch... Gruß Flo Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LaBonita Mitglied Dipl.-Math.
Beiträge: 151 Registriert: 26.07.2007 eM-Plant 7.5 bis 8.1 VB Java C#
|
erstellt am: 30. Aug. 2007 15:05 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo Flo, scan Deinen Code mal nach dem folgenden Ausdruck: Code: value1 = value1
Der Ausdruck ist _immer_ wahr und stellt daher keine wirkliche Bedingung dar. Da solltest Du vermutlich was dran ändern. Ausserdem glaube ich, dass Du trotz Deiner Änderungen nicht alle Einträge bekommst, weil Du meine Abbruchkriterien drin gelassen hast (if ... = -1 then exit do). Da überspringt er Dir alle Einträge, die nicht in jedem Tabellenblatt drin sind. Hier solltest Du auch noch etwas ändern. Viel Erfolg weiterhin. Gruß, LaBonita Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
carsten-3m Mitglied Dipl.-Ing. Mbau (Produktmanagement, Patent- und Normwesen)
Beiträge: 950 Registriert: 08.05.2007 Excel 2010
|
erstellt am: 30. Aug. 2007 17:32 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Soweit ich die Problemstellung verstanden habe, ginge das mit einer Ereignisüberwachung in jeder Tabelle, die so aussehen könnte (hier der Code für Tabelle1): Code: Private Sub Worksheet_Change(ByVal Wert As Range) hier = ActiveCell.Address Worksheets("Tabelle2").Range(hier) = Wert Worksheets("Tabelle3").Range(hier) = Wert End Sub
Erläuterung: Nach Änderung einer Zelle wird dieses Ereignis der obigen Prozedur aufgezeigt nebst Übergabe des neuen Zellinhalts in die Variable Wert. Daraufhin merkt sich die Prozedur die aktive Zelladresse in der Variable hier und überträgt den neuen Zellinhalt auf die beiden anderen Tabellen auf eine Zelle jeweils an gleicher Adresse. Die ganze Sache ist super kurz und tut was sie soll. Falls das nicht der Aufgabenstellung entspricht, naja, dann hab zumindest ich was neues gelernt und ihr könnt vielleicht auch was daraus entnehmen. [Diese Nachricht wurde von carsten-3m am 30. Aug. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8075 Registriert: 09.03.2006 MS-Office 365 ProPlus x86 WIN7(x64)
|
erstellt am: 30. Aug. 2007 17:42 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
@carsten Komplett in allen Sheets getestet? so ähnlich hatte ich nämlich anfangs auch gedacht, aber wenn Du die in jeder Tabelle drin hast, kommst Du leider aus den Change-Ereignissen nicht mehr raus und hängst Dich auf ;-) Allerdings war mein code dazu bedeutend länger, ich weiß gar nicht mehr, was ich da so alles getippt hatte, habe es ja wg. NichtFunzen wieder gelöscht... vielleicht lag es auch an dem Restcode ------------------ Gruß, runkelruebe Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
carsten-3m Mitglied Dipl.-Ing. Mbau (Produktmanagement, Patent- und Normwesen)
Beiträge: 950 Registriert: 08.05.2007 Excel 2010
|
erstellt am: 30. Aug. 2007 17:46 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Nö, hab ich nur in der ersten Tabelle getestet. Und siehe da, Du hast Recht, die Klamotte hängt sich in permamenten Änderungen auf. Na gut, ich denk da noch mal drüber nach, morgen... ------------------ Seit Pro/E Version 1 dabei, auwei... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LaBonita Mitglied Dipl.-Math.
Beiträge: 151 Registriert: 26.07.2007 eM-Plant 7.5 bis 8.1 VB Java C#
|
erstellt am: 30. Aug. 2007 18:59 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Hallo Carsten, unabhängig vom Aufhängen hat Dein Lösungsvorschlag noch den Nachteil, dass in jedem Blatt die zusammen gehörenden Zellen denselben Range haben müssen. Nach umfangreichen Diskussionen mit Firefox1982 (Flo) hat sich jedoch heraus gestellt, dass es nicht in jedem Tabellenblatt eine Zelle mit denselben Indizes (Spalte und Zeile sind benannt) gibt und diese müssen erst recht nicht an derselben Stelle stehen. Aus diesem Grund wird das Ganze so kompliziert - Leider... Gruß, Ortrun [Diese Nachricht wurde von LaBonita am 30. Aug. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8075 Registriert: 09.03.2006 MS-Office 365 ProPlus x86 WIN7(x64)
|
erstellt am: 30. Aug. 2007 21:42 <-- editieren / zitieren --> Unities abgeben: Nur für Firefox1982
Nachdem ich mich jetzt doch eingemischt habe, hier mal meine Idee zum Thema. Das hier in jedes Tabellenblatt: das klappt nämlich jetzt doch ;-) Code: Private Sub Worksheet_Change(ByVal target As Range) Call Dyn(Cells(target.Row, 1).Value, Cells(1, target.Column).Value, target.Value, Me.Index) End Sub
und das hier als Modul:
Code: Option Explicit Public Sub Dyn(strVersion As String, strParameter As String, strAenderung As String, Blatt As Integer) Static flag As Boolean Dim cell As Range Dim bl As Integer, a As Integer, b As Integer, i As Integer, j As IntegerIf flag = True Then Exit Sub flag = True For bl = 1 To Workbooks(1).Sheets.Count If bl <> Blatt Then Sheets(bl).Activate a = Sheets(bl).Cells(Rows.Count, 1).End(xlUp).Row b = Sheets(bl).Cells(1, Columns.Count).End(xlToLeft).Column For i = 2 To a For j = 2 To b Set cell = Sheets(bl).Cells(i, j) 'cell.Interior.ColorIndex = 34 If cell.Offset(-(cell.Row - 1), 0).Value = strParameter And cell.Offset(0, -(cell.Column - 1)).Value = strVersion Then cell.Value = strAenderung Next j Next i End If Next bl flag = False Sheets(Blatt).Activate End Sub
Nachteile des Ganzen: Es macht die Datei natürlich unglaublich langsam array-Lösung fand ich jetzt noch komplizierter Jede Eingabe in jedem Blatt wird gnadenlos bei gleicher Überschrift in Zeile 1 und Versions-Index in Spalte A in die anderen Blätter übertragen, kein Abgleich wie 2x selber Wert ist führend oder so.. Es sind sehr umständliche Elemente drin ;-)Ich hoffe, es läuft, bitte um Rückmeldung. [rredit] Unabhängig vom Spaß dieses Makros möchte ich übrigens betonen, dass ich eine andere Datenstruktur der Tabelle bevorzugen würde. Ein Blatt als Eingabeblatt mit allen erforderlichen Einträgen, alle anderen warum die unbedingt sein müssen, weiß ich immer noch nicht? 'ne ordentliche Tabelle mit Filtern und Gruppierungen, zum Drucken vielleicht doch Seiteneinrichtungsmakros, ist auch übersichtlich, aber ich schweife ab Blätter dann mit Bezügen (Sverweis z.B.) [/rredit] ------------------ Gruß, runkelruebe Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Firefox1982 Mitglied
Beiträge: 8 Registriert: 20.08.2007
|
erstellt am: 31. Aug. 2007 12:56 <-- editieren / zitieren --> Unities abgeben:
Man man, da hab ich was angerichtet... @Ortrun Ja danke für den Tipp, hatte es auch rausgenommen. Habe nur ausversehen die 1 Version angehängt... @runkelrübe Das ist es!!!! Und es funktioniert einwandfrei...Danke dir... ...Ortrun hat nur zu kompliziert gedacht, sonst hätte sie es auch hinbekommen...da bin ich mir sicher (schleim, schleim )!!!!!
und danke an alle, die mir geholfen haben!!! Ich habe fertig
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|