Aktuell kann es Probleme bei der Anmeldung mit dem Chrome oder Edge Browser geben. Ihr müsstet in die Einstellungen des Browsers gehen und Cache, Cookies und sofern vorhanden, gespeicherte Passwörter vom CEF löschen oder alternativ auf einen anderen Browser ausweichen. Ursache sind vermutlich kürzliche Browserupdates. x

Wahlweise Formeln oder Eingaben in Zellen – VBA
#11
Danke an alle für eure Mühe. Und vielen Dank silex1 für deine Formellösung.

Das mit den zusätzlichen Hilfsspalten ist eine Möglichkeit.
Bitte nicht falsch verstehen, ich finde das total super wie ihr helft, aber es könnte bei meiner Originaldatei mit 12 Tabellenblättern ( und ggf. kommen noch mehr hinzu) etwas kompliziert/unübersichtlich werden

Beim googeln habe ich folgenden VBA-Code gefunden, der einen ähnlichen Ansatz verfolgt wie den den ich in meiner Ausgangsfrage gefragt habe. 
Leider bezieht sich das auf eine Zelle links davon und bezieht sich auf eine feste Formel ( so wie ich das Laienhaft verstanden habe  Angel)

Gibt es da eine Möglichkeit den an meine Bedürfnisse anzupassen (bettel bettel). Für mich als VBA-Laien absolut zu hoch.

Hier der gefundene VBA-Code:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Zelle As Range
Dim a As Variant
Dim Zeilenzahl As Long
Zeilenzahl = WorksheetFunction.Max(ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row, _
ActiveSheet.Cells(Rows.Count, 2).End(xlUp).Row)

For Each Zelle In ActiveSheet.Range(„B2:B“ & Zeilenzahl)
a = Zelle.Offset(0, -1).Value
If a = „“ Or IsNumeric(a) = False Then
Zelle.Value = „“
Else
If Zelle.Value = „“ Then Zelle.Formula = „=RC[-1]*0.05“
End If

Next Zelle
End Sub


Bitte bitte nicht böse sein.
Danke 
Top
#12
Hallöchen,

nur mal etwas Theorie. Links daneben hast Du ja verstanden, dann ist ohne links daneben doch kein Problem?

a = Zelle.Offset(0, -1).Value

a = Zelle.Value

Die Stelle mit der festen Formel hast Du auch gefunden.

Zelle.Formula = „=RC[-1]*0.05“

In der vorherigen Formel wurde ein Wert übernommen. Mit dieser Formel wird eine Formel gesetzt. Wenn Due eine Formel herausholen willst, dann geht das ähnlich wie mit der ersten Formel. Du könntest dazu eventuell eine andere Variable nehmen. Die Formel holst Du gleich am Anfang des Makros in die Variable. Damit die Formel auch später noch zur Verfügung steht, solltest Du sie in eine globale Variable übernehmen, also außerhalb des SelectionSheet... definieren.

Public b as Sting

...Sub Worksheet:SelectionChange ...

b = Zelle.Formula

Deine Eingabe kannst Du in einem

... Sub WorksheetChange ...

auswerten. Wenn Dir die Eingabe nicht passt, tust Du dann die betroffene zelle mit b füllen

Zelle.Formula = b

Passe aber auf, dass Du nur die gewünschten Zellen mit b füllst, nicht dass Du die Formel später auf dem ganzen Blatt hast Smile
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top


Gehe zu:


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