Hallo!
Ich habe eine Excel-Eingabemaske erstellt (keine UserForm, Excel 2016), in die Nutzer Werte eingeben müssen.
Diese Werte werden auf einem neuen Worksheet per Formeln zu Textfragmenten / Sätzen verarbeitet, die in Zellen untereinander stehen. Dieser "Ergebnis-Text" muss dann in ein anderes Programm eingefügt werden.
Der fertige Text muss so untereinander stehen wie es die Zellenbereiche bzw. -Blöcke mit den Formelergebnissen es vorgeben (zB so: C4:C12, sowie C14:C29, u.a...).
Da das externe Programm mit Excel in keinster Weise verknüpft werden kann, muss das ganze per copy-paste über die Zwischenablage laufen.
1) Ich möchte dies gern per klick auf eine Schaltfläche (zB ActiveX oder Formularsteuerelement) durchführen. Der zwischengespeicherte Text (untereinander sortiert, wie in den Zellen vorgegeben) soll dann in dem anderen Programm per STRG-V eingefügt werden.
2) Das zweite Problem ist, dass nicht immer alle Zellen gefüllt sind, da auch mal in bestimmten Zellen keine Werte eingegeben werden müssen und so eine oder mehrere Zellen in dem genannten möglichen Bereich (C4:C12, C14:C29, u.a..) dann eben "keinen Wert" enthalten (bzw. "" durch eine Formel erzeugt!).
Kann man die "leeren" Zeilen direkt per Code löschen/unberücksichtigt lassen?
Manche Leerzeilen sollen als Abstandhalter bleiben (zB C13 zwischen den Blöcken C4:C12, C14:C29), andere Leerzeilen, die keinen Text enthalten (also nur "" durch eine Formel) jedoch gelöscht werden (beispielsweise C8 und C11 im Block C4:C12).
Die Lösungen dieser beiden Probleme sind für mich der Endgegner, dann wäre alles perfekt! ;-)
Vielen Dank für Lösungsansätze! Ich habe schon einige Codes ausprobiert und verzweifle daran.. Bin leider auch kein VBA-Experte.. :-(
|