Registriert seit: 14.04.2014
Version(en): Office 2013/2016/2019/365
Hallo,
Eigenschaften und Methoden würde ich immer angeben! Ich arbeite zum Teil für Konzerne die die verschiedensten Officeversionen innerhalb des Konzerns nutzen. Ich hatte einmal den Fall das ich bei einer Programmierung einen angeblichen Default Eigenschaft´nicht gesetzt hatte, die Programmierung funktionierte im deutschen Excel aber bei der eng. Version kam es zum Absturz.... und nein ich habe keine Local Geschichte verwendet. ^^ Da ging es auch nur um .Value
In jeder anderen Sprache würde der Compiler sofort schreien, wenn Eigenschaften und Methoden fehlen, VB/VBA verleitet dann einen immer wieder auf selbige zu vergessen, da ja angeblich Default. Und wer weiß, vielleicht kommt MS ja wirklich mal auf die Idee VBA mal sauber programmieren zu lassen, dann haben einige Programmierer mal viel Arbeit vor sich.
lg Chris
lg Chris Feedback nicht vergessen. 3a2920576572206973742064656e20646120736f206e65756769657269672e
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo, Peter Haserodt hatte dazu auch mal was geschrieben: Default: Kleines Wort - Grosse WirkungGruß Uwe
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 15.04.2014
Version(en): Office 2007
Hallo @all, finde dies was man/ich hier lesen kann/darf sehr interessant. Das Blatt Papier ist geduldig und giert mit Bleistift/Kugelschreiber befüllt zu werden. Die Schrift lässt dann sofort erkennen was wer wo meint. Aber VBA für mich als Newbie ist eher die leere Rückseite des zu beschreibenden Blattes.
z.b.: Wie eine Formel in VBA schreiben (Excel selbst kein Thema) die dann doch Ellenlang wird, weil viele Verschachtelungen Verweise und und und inne sind?
Vielen Dank für die Fachmännische Ausführungen. Ming Motto: Du et odda lasset - learning by doing
mfg
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank, (21.08.2014, 18:30)WergibtmirRat schrieb: z.b.: Wie eine Formel in VBA schreiben (Excel selbst kein Thema) die dann doch Ellenlang wird, weil viele Verschachtelungen Verweise und und und inne sind? Formeln in Zellen schreibenFormeln auslesen - Englische Formelnamen und mehrAnsonsten heißt es wie Du richtig sagst: Learning by doing
Gruß Stefan Win 10 / Office 2016
Registriert seit: 15.04.2014
Version(en): Office 2007
(21.08.2014, 18:47)Steffl schrieb: Formeln in Zellen schreiben Formeln auslesen - Englische Formelnamen und mehr Hallo @all, vielen Dank an all die Antwortgebenden die Seiten sind studiert worden von mir. Augenmerk Matrixformeln Ich habe ein kleines Problem oder Verständnisproblem Beim schreiben eines Makros für Zelle xy das die Werte in yx+ ... analysiert (Wert korrekt einfügen/berechnen soll), siehe Klartext hier: F4 {=SUMMENPRODUKT(WENN(ISTZAHL(G4:Z4);G4:Z4;VERWEIS(G4:Z4;{"aa";"k";"s";"x"};{4;8;3;0}))*1)} siehe Makro hier: Selection.FormulaArray = _ "=SUMPRODUCT(IF(ISNUMBER(RC[1]:RC[20]),RC[1]:RC[20],LOOKUP(RC[1]:RC[20],{""aa"";""k"";""s"";""x""},{4;8;3;0}))*1)" lässt sich hier nur für die jeweilige Zelle der Code schreiben oder tritt die Berechnung bei jeder neu hinzugefügen Zeile in Aktion. Frage 2: Wenn ein Kriterium vergeben sein sollte (Suchtext) Spielname, sollte jede Formel einzeln aufgeführt oder in eine Schleife gesetzt werden? Gedanke: Wenn Zelle "D" den Wert "A" dann nimm die Formel 1, wenn Zelle "D" den Wert "B" dann nimm die Formel 2... If... Else... Schleife habe damit so meine Schaffenskrise. Ich bitte um Hilfe
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank, If...Else ist keine Schleife sondern eine Abfrage genauso wie zum Beispiel Select Case. Mal ein sinnlos Beispiel Code: Sub prcFrank()
With Range("B1") Select Case Range("A1") Case 1 .Formula = "=sum(RC[1]:RC[3])" Case 2 .Formula = "=sum(RC[11]:RC[13])" Case Else .Value = "Falscher Wert" End Select End With End Sub
Gruß Stefan Win 10 / Office 2016
Registriert seit: 15.04.2014
Version(en): Office 2007
(22.08.2014, 20:53)Steffl schrieb: ... If...Else ist keine Schleife sondern eine Abfrage... Hallo Stefan, Ich schrieb... Zitat:_Beim schreiben eines Makros für Zelle xy das die Werte in yx+ ... analysiert (Wert korrekt einfügen/berechnen soll), siehe Klartext hier: F4 {=SUMMENPRODUKT(WENN(ISTZAHL(G4:Z4);G4:Z4;VERWEIS(G4:Z4;{"aa";"k";"s";"x"};{4;8;3;0}))*1)} siehe Makro hier: Selection.FormulaArray = _ "=SUMPRODUCT(IF(ISNUMBER(RC[1]:RC[20]),RC[1]:RC[20],LOOKUP(RC[1]:RC[20],{""aa"";""k"";""s"";""x""},{4;8;3;0}))*1)" lässt sich hier nur für die jeweilige Zelle der Code schreiben oder tritt die Berechnung bei jeder neu hinzugefügen Zeile in Aktion. Frage 2: Wenn ein Kriterium vergeben sein sollte (Suchtext) Spielname, sollte jede Formel einzeln aufgeführt oder in eine Schleife gesetzt werden? Gedanke: Wenn Zelle "D" den Wert "A" dann nimm die Formel 1, wenn Zelle "D" den Wert "B" dann nimm die Formel 2..._ Neue Idee, weiss nicht ob das dann gehen könnte: Alle Formeln sind an einem zentralen Ort (Makro;Klaseenmodul ...) werden dann durch Verweise während der Eingabe im UF angesprochen. Was denkt ihr? Was schreiben mir die VBA-Experten bzw. Excelianer von euch2 auf die Vollen Code: =WENN(F1="2 auf die Vollen";WENN(A1="AA";4;WENN(A1="s";3;WENN(A1="x";0;WENN(A1="k";8;A1))))+WENN(B1="AA";4;WENN(B1="s";3;WENN(B1="x";0;WENN(B1="k";8;B1))));"")
gr.Hausnummer Code: =WENN(F1="gr.Hausnummer";WENN(A1="AA";4*100;WENN(A1="s";3*100;WENN(A1="x";0*100;WENN(A1="k";8*100;A1*100))))+WENN(B1="AA";4*10;WENN(B1="s";3*10;WENN(B1="x";0*10;WENN(B1="k";8*10;B1*10))))+WENN(C1="AA";4;WENN(C1="s";3;WENN(C1="x";0;WENN(C1="k";8;C1)))))
kl.Hausnummer Code: =WENN(F1="kl.Hausnummer";WENN(A1="AA";4*100;WENN(A1="s";3*100;WENN(A1="x";9*100;WENN(A1="k";8*100;A1*100))))+WENN(B1="AA";4*10;WENN(B1="s";3*10;WENN(B1="x";9*10;WENN(B1="k";8*10;B1*10))))+WENN(C1="AA";4;WENN(C1="s";3;WENN(C1="x";9;WENN(C1="k";8;C1)))))
Die Formelzeilen sind im Texteditor erstellt worden, habe nur fiktive Zellennamen genommen (Klartext), um es zu veranschaulichen mfg
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo Frank, meinst Du so? (Formel sind mal für den Bereich N1:N10 und Formel ist 2 auf die Vollen) Code: Sub prcWergibtMirRat() Dim lngC As Long For lngC = 1 To 10 Cells(lngC, 14).FormulaR1C1 = "=IF(RC[-8]=""2 auf die Vollen"",IF(RC[-13]=""AA"",4,IF(RC[-13]=""s"",3,IF(RC[-13]=""x"",0,IF(RC[-13]=""k"",8,RC[-13]))))+IF(RC[-12]=""AA"",4,IF(RC[-12]=""s"",3,IF(RC[-12]=""x"",0,IF(RC[-12]=""k"",8,RC[-12])))),"""")" Next lngC End Sub
Sub xxxxx() Range("N1:N10").FormulaR1C1 = "=IF(RC[-8]=""2 auf die Vollen"",IF(RC[-13]=""AA"",4,IF(RC[-13]=""s"",3,IF(RC[-13]=""x"",0,IF(RC[-13]=""k"",8,RC[-13]))))+IF(RC[-12]=""AA"",4,IF(RC[-12]=""s"",3,IF(RC[-12]=""x"",0,IF(RC[-12]=""k"",8,RC[-12])))),"""")" End Sub
Gruß Stefan Win 10 / Office 2016
Registriert seit: 15.04.2014
Version(en): Office 2007
(24.08.2014, 18:07)Steffl schrieb: ...meinst Du so... Und schon wieder einen Haupttreffer gelandet Stefan. Danke, ja so meinte ich es. In der Spalte mit Spielname oder Spiel-ID sollte dann der Treffer erfolgen, ist eine Übereinstimmung mit Formelsuchtext gegeben so soll die Formel in Aktion treten. Nur alle Formeln in einen Container pressen oder hier auch nach Namen sortiert ablegen. Ich habe keinerlei Vorstellung, wie anstellen. Anschließend ärgert mich hier noch die Frage: Wie am Ende eines jeden Spiel's die Rangfolge richtig berechnen. In einem Thread wurde das ganze ja schon beantwortet (Tabellenblattstruktur) Wie nur in VBA schreiben, da keine festen Werte stehen. Im Tabellenblatt in der Zelle E10 steht die Formel =summe(a10+b10). Per VBA habe ich ja nur die Spaltenangaben zur ersten leeren Zeile um hier Ergebnisse einzutragen oder berechnen. Hoffe das war jetzt nicht zu unverständlich. mfg
|