Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA - Text mit Zeilenumbruch und Formel mit Variabel per VBA
#1
Hallo zusammen,

mein Ziel ist es per VBA in die Zelle AM1 zwei Textzeilen zu schreiben und dann nach einem weiteren Zeilenumbruch das Ergebnis aus Teilergebnis(9;AM2:AM748) gefolgt von einem Eurozeichen abzubilden. Das Formelergebnis als solches soll natürlich sich bei Filterung oder Wert Änderung ändern.

Folgender Code funktioniert und liefert das richtige Ergebnis:
Range("AM1").Formula = "=""Diff. zu"" & CHAR(10) & ""Fracht:"" & CHAR(10) & SUBTOTAL(9,AM2:AM748) & "" €""  "

Ich möchte aber die 748 durch meine deffinierte Long-Variable "Ende" ersetzen, die im Endeffekt der letzten benutzten Zeilen-Nummer entspricht.
Meine Idee war:

Range("AM1").Formula = "=""Differenz"" & CHAR(10) & ""Frachtergebnis"" & CHAR(10) & "SUBTOTAL(9,AM2:AM"  & Ende & ")" & "" €""  "

Das gibt aber nur die Fehlermeldung: Fehler beim Kompilieren: Syntaxfehler

Hat jemand eine Idee, wo mein Denkfehler ist? :s

Vielen Dank und viele Grüße
Kai
Antworten Top
#2
Hi,

ungetestet:


Code:
Range("AM1").Formula = "=""""Differenz" & CHAR(10) & "Frachtergebnis""" & CHAR(10) & "SUBTOTAL(9,AM2:AM" & Ende & ")" & """ €"""
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • Kai_
Antworten Top
#3
Leider nein.

Er markiert das erste CHAR(10) und sagt "Sub oder Function" nicht definiert.

Gruß
Kai
Antworten Top
#4
Hi,

dann versuche mal das:

Code:
Range("AM1").Formula = "=""""Differenz&Zeichen(10)&Frachtergebnis&zeichen(10)&SUBTOTAL(9,AM2:AM" & Ende & ")" & """ €"""
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#5
Hi,

das gibt einen "Anwendungs- oder Objektbasiertenlaufzeitfehler".

Habe nun dieses WorkAround mir gebaut:

Code:
Range("AM1").Formula = "=""Diff. zu"" & CHAR(10) & ""Fracht:"" & CHAR(10) & SUBTOTAL(9,AM2:AM748) & "" €""  "
Range("AM1").Replace "748", Ende, xlPart

Etwas "unschön", aber funktioniert.
Danke für deine Hilfe!
Antworten Top
#6
Hi,


Code:
Range("AM1").FormulaLocal = "=""Differenz""&ZEICHEN(10)&""Frachtergebnis""&ZEICHEN(10)&Teilergebnis(9;AM2:AM" & Ende  & ")&"" €"""
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • Kai_
Antworten Top
#7
Das klappt!
Danke! :)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste