Sławomir Borowik

Sławomir Borowik inżynier projektu

Temat: Formuła i wynik w dwóch komórkach

Witam

Dla wyjadaczy pewnie prościzna,a dla mnie problemik.

Interesuje mnie jak wykonać takie coś:
Dane zmieniam w A1
W komórce A1 mam formułę (wpisaną bez "=")
W komórce B1 zostaje podany wynik obliczenia działania z komórki A1

lub

Dane zmieniam w B1
W komórce A1 mam formułę z działania
W komórce B1 zostaje podane działanie (formuła) obliczona w A1.

Dane to formuła na cyfrach, nie ma odwołań do innych komórek.

Wierszy w kolumnie jest kilkadziesiąt, niektóre puste.

Z góry dziękuję za pomoc

sławekTen post został edytowany przez Autora dnia 25.07.14 o godzinie 14:38
Oskar Shon

Oskar Shon Dodatki do Office
www.VBATools.pl

Temat: Formuła i wynik w dwóch komórkach

Formuły arkuszowe/inaczej funkcje, zwracają wynik obliczenia.
-Jeśli nadpiszesz formułę to tym sposobem przestanie ona istnieć. Można to obejść ale programując zdarzenia arkusza.
-Nie można formułami też zrobić tak, aby wpisywać w A1 a wynik pojawi się w B1, przy zamiarze zapisania coś w B1 aby w A1 otrzymać wynik.
-Zabronione też jest tworzenie formuł działających na bazie wzajemnych odwołań. W Excelu nazywa się to odwołaniem cyklicznym.
-Formuły musza zaczynać sie od znaku = lub określenia znaku + lub -. Inne znaki lub liczby będą tworzyły wartość lub tekst i nie będą spełniały roli formuły.

Przeczytaj pow informacje a teraz napisz poprawnie i zrozumiale co chcesz zrobić.
Sławomir Borowik

Sławomir Borowik inżynier projektu

Temat: Formuła i wynik w dwóch komórkach

Znalałem już odpowiedź na nurtujący mnie problem.

Zmiana formuły na wyrażenie następuje teraz na podstawie makr:

Sub FormułaNaText()
Dim kom As Range

For Each kom In Selection
If Left(kom.Text, 2) <> "F=" Then kom.Value = "F" & kom.Formula
Next kom
End Sub

Sub TextNaFormułę()
Dim kom As Range

For Each kom In Selection
If Left(kom.Text, 2) = "F=" Then kom.Formula = Mid(kom.Value, 2)
Next kom
End Sub

pozdrawiam
Sławek



Wyślij zaproszenie do