Hallo,
ich habe ein Problem mit Excel bzw. VBA. Dieses belastet mein Hirn schon seit einigen Tagen und erhoffe mir hilfreiche Tipps und Anregungen.
Vielen Dank schonmal im Voraus.
Excel beherrsche ich recht passabel, VBA würde ich gerne. Dabei hangel ich mich schrittweise vor und versuche mehr Erfahrung anzusammeln. Im folgenden mein Problem:
Ich erstelle ein Rechnungsformular. In diesem Rechnungsformular werden Kundeninformationen eingegeben. Entsprechend natürlich auch die Anschrift des Kunden mit Postleitzahl und Ort! Da das Formular für meine Kolleginnen und Kollegen so einfach wie möglich sein soll, dachte ich mir, dass nach Eingabe der Postleitzahl der Ort automatisch eingefügt werden soll. Dies funktioniert mit Excel (Zellenformel: =WENNNV(SVERWEIS(C9;'Ort&Plz'!A1:B12884;2;0);"")) auch sehr gut! Das Problem besteht darin dass, eventuell ein Kunde nicht aus Deutschland kommt. Also muss abweichend eine andere Postleitzahl z.B. Schweiz eingegeben werden. Da dann aber der Nachschlagewert (Postleitzahl) nicht gefunden werden kann oder gar der automatisch eingefügte Ort der Falsche ist muss die Zelle mit dem Ort (also die Zelle in welcher die o.g. Formel steht) überschrieben werden. Daraufhin löscht sich verständlichweise die formel und das Sverweis funktioniert nicht mehr.
In VBA habe ich mir folgendes überlegt:
Private Sub Workbook_Activate()
Worksheets("Eingabemaske").Range("C10").FormulaLocal = "=WENNNV(SVERWEIS(C9;'Ort&Plz'!A1:B12884;2;0);"")" 'C10 ist die Zelle mit dem auszugebenden Ort, C9 die einzugebende Postleitzahl
End Sub
Dies funkioniert aber nur mit einfachen Formeln wie z.B. "=1+1"
Hierin besteht mein Problem, hoffe auch eine Erklärung und evtl. ein Lösung.
Herzliche Dank an alle Experten! Ich lerne hoffentlich dazu!
Gruß Bass
|