Supportnet / Forum / Tabellenkalkulation
VBA Code verbessern II
Frage
Moin..
Ich hab ein Makro aufgezeichnet welches in eine Liste leere Zeilen einfügt. Das geschieht per Click auf einen CommandButton. Zusätzlich wird in die Zeilen eine Sverweis Formel kopiert, die auf Datensätze einer Kundendatei zugreift. Per Kombifeld aus Formular kann ich dann in die Zeile schon bestehende Kunden daten einpflegen. Wenn ich dann erneut den CommandButton clicke erscheint die neue Zeile aber schon mit dem neuen Datensatz. Andere ich jetzt das Suchkriterium der Sverweisformal von 1 auf z.B 2(d.h. ich möchte den zweiten datensatz nehmen.wird auch in der vorangegangenen Zeile der Datensatz aktualisiert. Wie kann ich das verhindern????
Antwort 1 von CaroS
Hallo kuestenjung06,
Du schreibst da was von "VBA Code verbessern ". Und dann kommt eine Menge Text, nur leider keine einzige Zeile VBA-Code. Den Text darf dann jeder Leser im Geiste in einen VBA-Code und in eine Vorstellung einer bestimmten Situation umsetzen.
Was meinst Du, wie viele verschiedene Varianten entstehen da bei - sagen wir mal - 100 Lesern?
Zweite Frage: Was hältst Du davon, wenn alle die, die meinen, von Deiner Beschreibung etwas begriffen zu haben, und Dir mit einem Verbesserungsvorschlag weiterhelfen wollen, diesen auch in natürlicher Sprache abfassen, also ebenfalls ohne eine einzige Zeile VBA-Code? Na da kommt Freude auf!
Ich weiß ja nicht, was Du über das "Arbeits"-Verhältnis von Forumsfragern und Forumsantworter denkst und ob so ein kleines Entgegenkommen in Form einer Kopie Deines Codes, den andere Dir helfen sollen zu verbessern, schon zuviel verlangt ist? Du kannst ja mal darüber nachdenken, wie sowas unter kommerziellen Umständen ablaufen würde. (Ich kann Dir sagen, ich würde mich um Aufträge von Dir reißen! Und das ist völlig ernst gemeint.)
Gruß,
CaroS
Du schreibst da was von "VBA Code verbessern ". Und dann kommt eine Menge Text, nur leider keine einzige Zeile VBA-Code. Den Text darf dann jeder Leser im Geiste in einen VBA-Code und in eine Vorstellung einer bestimmten Situation umsetzen.
Was meinst Du, wie viele verschiedene Varianten entstehen da bei - sagen wir mal - 100 Lesern?
Zweite Frage: Was hältst Du davon, wenn alle die, die meinen, von Deiner Beschreibung etwas begriffen zu haben, und Dir mit einem Verbesserungsvorschlag weiterhelfen wollen, diesen auch in natürlicher Sprache abfassen, also ebenfalls ohne eine einzige Zeile VBA-Code? Na da kommt Freude auf!
Ich weiß ja nicht, was Du über das "Arbeits"-Verhältnis von Forumsfragern und Forumsantworter denkst und ob so ein kleines Entgegenkommen in Form einer Kopie Deines Codes, den andere Dir helfen sollen zu verbessern, schon zuviel verlangt ist? Du kannst ja mal darüber nachdenken, wie sowas unter kommerziellen Umständen ablaufen würde. (Ich kann Dir sagen, ich würde mich um Aufträge von Dir reißen! Und das ist völlig ernst gemeint.)
Gruß,
CaroS
Antwort 2 von kuestenjung06
Na mensch nicht gleich böse werden...
Der VBA- Code ist ewig lang und beim Einstellen gabs gleich auch ein Problem und er wurde nicht gesendet.
Sub hinzufügen
Range("F18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-4]"
Range("J18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-7]"
Range("K18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-7]"
Range("L18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-7]"
Range("M18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-10]"
Range("N18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-10]"
Range("O18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-10]"
Range("P18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-10]"
Range("Q18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-9]"
Range("R18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-12]"
End Sub
Diesen Code hab ich nur mit Recorder aufgezeichnet.
Durch diese Verweise (R[-3]C[-12]") wird in den Zellen (Range("R18").) ein Text eingetragen. Der kommt aus einer Eingabemaske mit SVerweis.Sverwei bezieht sich dabei auf eine Kundendatei. Das ist der Teil der nach der Makroaufforderung(hinzufügen) in die Zeile der neuen Zeile eingetragen werden soll. Ändere ich jetzt den Sverweis und gebe durch hinzufügen einen neuen Kunden in einer folgende Zeile ein, ändert sich derzeit auch die vorangegangene Zeile. Das will ich ändern.
Der VBA- Code ist ewig lang und beim Einstellen gabs gleich auch ein Problem und er wurde nicht gesendet.
Sub hinzufügen
Range("F18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-4]"
Range("J18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-7]"
Range("K18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-7]"
Range("L18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-7]"
Range("M18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-10]"
Range("N18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-10]"
Range("O18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-10]"
Range("P18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-10]"
Range("Q18").Select
ActiveCell.FormulaR1C1 = "=R[-5]C[-9]"
Range("R18").Select
ActiveCell.FormulaR1C1 = "=R[-3]C[-12]"
End Sub
Diesen Code hab ich nur mit Recorder aufgezeichnet.
Durch diese Verweise (R[-3]C[-12]") wird in den Zellen (Range("R18").) ein Text eingetragen. Der kommt aus einer Eingabemaske mit SVerweis.Sverwei bezieht sich dabei auf eine Kundendatei. Das ist der Teil der nach der Makroaufforderung(hinzufügen) in die Zeile der neuen Zeile eingetragen werden soll. Ändere ich jetzt den Sverweis und gebe durch hinzufügen einen neuen Kunden in einer folgende Zeile ein, ändert sich derzeit auch die vorangegangene Zeile. Das will ich ändern.
Zitat:
Admininfo: bitte vermeide Mehrfachanfragen in verschiedenen, bzw. gleichen Gruppen. Siehe FAQ2.
Admininfo: bitte vermeide Mehrfachanfragen in verschiedenen, bzw. gleichen Gruppen. Siehe FAQ2.

