Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Formel per VBA einfügen

Formel per VBA einfügen
Pascal
Hallo liebes forum,
ich hab da mal ne frage. Ich möchte gerne per VBA Formel in Zellen auf einen anderen Tabellenblatt einfügen, aber ich bekomme derzeit immer den Fehler: Laufzeitfehler 1004 "Anwendungs- und Objekt definierter Fehler.
Hier ein Auszug von meinem Code:
Private Sub OK1_Click()
Personalnummer = TextBox11
IA_Nummer = TextBox12
IST_Zeit = TextBox13
Bemerkung = TextBox14
Worksheets("Zeitprotokoll").Rows(6).Insert
Worksheets("Zeitprotokoll").Range("d6").Formula = "=WENNFEHLER(SVERWEIS(C6,Mitarbeiterliste! A:B,2,FALSCH),"")"
Worksheets("Zeitprotokoll").Range("l6").Formula = "=WENNFEHLER((((K6/100)*I6)/J6),"")"
Worksheets("Zeitprotokoll").Range("n6").Formula = "=WENNFEHLER(SVERWEIS(M6,Freigabeliste!A:B,2,FALSCH),"")"

Worksheets("Zeitprotokoll").Select
...............
Danke im Vorraus
Pascal
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
;"") --> ;"""")
25.05.2011 09:12:22
Matthias
Hallo
Activecell.FormulaLocal="=WENNFEHLER(SVERWEIS(C6;Mitarbeiterliste!A:B;2;FALSCH);"""")
setz die Anführungszeichen in nochmal in Anführungszeichen
Userbild
AW: ;"") --> ;"""")
25.05.2011 09:34:44
Pascal
Hallo Maththias,
ich hab jetzt folgenes stehen:
Private Sub OK1_Click()
Personalnummer = TextBox11
IA_Nummer = TextBox12
IST_Zeit = TextBox13
Bemerkung = TextBox14
Worksheets("Zeitprotokoll").Rows(6).Insert
Worksheets("Zeitprotokoll").Range("d6").ActiveCell.FormulaLocal = "=WENNFEHLER(SVERWEIS(C6,Mitarbeiterliste! A:B,2,FALSCH),"""")"
Worksheets("Zeitprotokoll").Range("l6").ActiveCell.FormulaLocal = "=WENNFEHLER((((K6/100)*I6)/J6),"")"
Worksheets("Zeitprotokoll").Range("n6").ActiveCell.FormulaLocal = "=WENNFEHLER(SVERWEIS(M6,Freigabeliste!A:B,2,FALSCH),"""")"
Worksheets("Zeitprotokoll").Select

jetzt habe ich den Fehler: Laufzeitfehler 438 "Ojekt unterstützt die Eigenschaft oder Methode nicht"
was mache ich da falsch?
Gruß
Pascal
Anzeige
AW: ;"") --> ;"""")
25.05.2011 09:40:48
Matthias
Hallo
Ich baue das nicht nach, aber ich tippe hier
Worksheets("Zeitprotokoll").Range("l6").ActiveCell.FormulaLocal = "=WENNFEHLER((((K6/100)*I6)/J6),"")"
Worksheets("Zeitprotokoll").Range("l6").ActiveCell.FormulaLocal = "=WENNFEHLER((((K6/100)*I6)/J6),"""")"
nicht getestet
Userbild
Anzeige
Semikolon statt Komma ... ?
25.05.2011 09:49:37
Matthias
Hallo
FormulaLocal="=WENNFEHLER((((K6/100)*I6)/J6);"""")
Gruß Matthias
AW: Semikolon statt Komma ... ?
25.05.2011 09:58:48
Pascal
Hallo,
ich hab jetzt mal die Formel aufgezeichnet uns hab die wie folgt abgeändert:
Private Sub OK1_Click()
Personalnummer = TextBox11
IA_Nummer = TextBox12
IST_Zeit = TextBox13
Bemerkung = TextBox14
Worksheets("Zeitprotokoll").Rows(6).Insert
Worksheets("Zeitprotokoll").Range("d6").ActiveCell.FormulaR1C1 = _
"=IF(ISERROR(VLOOKUP(RC[-1],Mitarbeiterliste!C[-3]:C[-2],2,FALSE)),"""")"
Worksheets("Zeitprotokoll").Range("l6").ActiveCell.FormulaR1C1 = "=IFERROR((((RC[-2]/100)*RC[-2])/RC[-1]),"""")"
Worksheets("Zeitprotokoll").Range("n6").ActiveCell.FormulaR1C1 = _
"=IFERROR(VLOOKUP(""M6!"",Freigabeliste!C[-13]:C[-12],2,FALSE),"""")"
Worksheets("Zeitprotokoll").Select

hab jetzt immer noch den Fehler 438. ich dachte man müsste im VBA bei Formeln immer Komma statt Simikolon?
Gruß
Pascal
Anzeige
AW: Semikolon statt Komma ... ?
25.05.2011 10:05:36
Pascal
Noch eine kleine Aänderung zum Code bei der dritten Formel:
ActiveCell.FormulaR1C1 = _
"=IFERROR(VLOOKUP(RC[-1],Freigabeliste!C[-13]:C[-12],2,FALSE),"""")"

AW: nochmal ...
25.05.2011 10:36:41
Pascal
Hey,
hat geklappt. Super
Danke
Pascal
AW: Semikolon statt Komma ... ?
25.05.2011 10:37:26
fcs
Hallo Pascal,
in den verweisen auf die Zellen darf das ".ActiveCell" nach der Range-Angabe nicht vorhanden sein.
In der letzten Formel ist ""M6!"" wahrscheinlich falsch. Hier muss wohl RC[-1] stehen.
Mit dem With-Konstrukt erspart man sich hier die ständige Wiederholung des Blattnamens
Gruß
Franz
Private Sub OK1_Click()
Personalnummer = 12345 'TextBox11
IA_Nummer = IA1224 'TextBox12
IST_Zeit = "08:10" 'TextBox13
Bemerkung = "Bemerkung" 'TextBox14
With Worksheets("Zeitprotokoll")
.Rows(6).Insert
.Range("d6").FormulaR1C1 = _
"=IF(ISERROR(VLOOKUP(RC[-1],Mitarbeiterliste!C[-3]:C[-2],2,FALSE)),"""")"
.Range("l6").FormulaR1C1 = "=IFERROR((((RC[-2]/100)*RC[-2])/RC[-1]),"""")"
.Range("n6").FormulaR1C1 = _
"=IFERROR(VLOOKUP(""M6!"",Freigabeliste!C[-13]:C[-12],2,FALSE),"""")"
'   .Range("n6").FormulaR1C1 = _
"=IFERROR(VLOOKUP(RC[-1],Freigabeliste!C[-13]:C[-12],2,FALSE),"""")" '?
.Select
End With
End Sub

Anzeige
AW: Formel per VBA einfügen
25.05.2011 09:28:53
Marc
Moin!
Der Gedanke der formel ist gar nicht verkehrt
Füge doch mal folgende Formel mit dem VBA-Rekorder per Copy/Paste deine Tabelle.
=WENN(ISTFEHLER(SVERWEIS(C6;Mitarbeiterliste!A:B;2;FALSCH));"";"Sonst was?")
Die anderen Formeln mußt du entsprechend korrigieren.
Gruß, Marc
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige