Cum testez daca o celula contine o formula
Cum testez daca o celula contine o formula
Am nevoie sa numar celulele cu formule dintr-un domeniu.
Cum testez daca o celula contine o formula?
Stiu de functia TYPE care returneaza un numar (1,2,4,..) daca celula contine numar, text, valoare logică, etc. dar cum fac pentru formulă?
Cum testez daca o celula contine o formula?
Stiu de functia TYPE care returneaza un numar (1,2,4,..) daca celula contine numar, text, valoare logică, etc. dar cum fac pentru formulă?
Re: Cum testez daca o celula contine o formula
Vezi daca te ajuta ce este aici: Numara formule si indexeaza pagini
Re: Cum testez daca o celula contine o formula
Pe mine ma intereseaza sa-mi intoarca, intr-o celula, numarul de formule din domeniu.
Sau daca e mai simplu, sa testez o singura celula dintr-o oaie daca aceasta contine formula, iar rezultatul testarii sa fie afisat intr-o celula.
Pentru cazul concret atasez fisierul Parc.xls. Acesta are 31 foi care au legaturi la 31 foi din alt fisier din reteaua locala (31fiind zilele lunii). In fiecare zi, dupa ce actualizez fisierul Parc.xls, in foaia zilei respective, printr-o macrocomanda, transform formulele in valori (celulele verde galbui ex H7,I7 etc). Fac acest lucru pentru ca daca cineva modifica fisierul sursa retroactiv (pt zilele anterioare) modificarea sa nu se propage si in fisierul Parc.
As dori ca in fiecare foaie, in celula A1 de exemplu, sa apara valoarea 0 daca H7 nu contine formula sau 1 daca aceasta contine formula.
In foaia TOTAL, in celula A1, pot face astfel o verificare daca a fost rulata macrocomanda de inlocuire a formulelor cu valori in fiecare zi.
Sau daca e mai simplu, sa testez o singura celula dintr-o oaie daca aceasta contine formula, iar rezultatul testarii sa fie afisat intr-o celula.
Pentru cazul concret atasez fisierul Parc.xls. Acesta are 31 foi care au legaturi la 31 foi din alt fisier din reteaua locala (31fiind zilele lunii). In fiecare zi, dupa ce actualizez fisierul Parc.xls, in foaia zilei respective, printr-o macrocomanda, transform formulele in valori (celulele verde galbui ex H7,I7 etc). Fac acest lucru pentru ca daca cineva modifica fisierul sursa retroactiv (pt zilele anterioare) modificarea sa nu se propage si in fisierul Parc.
As dori ca in fiecare foaie, in celula A1 de exemplu, sa apara valoarea 0 daca H7 nu contine formula sau 1 daca aceasta contine formula.
In foaia TOTAL, in celula A1, pot face astfel o verificare daca a fost rulata macrocomanda de inlocuire a formulelor cu valori in fiecare zi.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.
Re: Cum testez daca o celula contine o formula
Poti sa faci o Functie de Foaie de Calcul proprie care sa functioneze exact ca ale Excelului.
In Visual Basic Editor, intr-un modul standard (Insert>Module) poti sa scrii functia urmatoare pe care, fara sa trebuiasca sa faci nimic in plus, o poti gasi apoi si in Excel cu Insert>Function>(categoria User Defined), sau poti sa o tastezi direct intr-o celula. Ai scris-o - a aparut acolo.
Functia FormuleCn() primeste ca argument o referinta a unei celule sau regiuni, si intoarce numarul de celule care au formule.
Mai multe despre Functii de Foaie de Calcul proprii eu am gasit la http://www.ozgrid.com/VBA/Functions.htm.
In Visual Basic Editor, intr-un modul standard (Insert>Module) poti sa scrii functia urmatoare pe care, fara sa trebuiasca sa faci nimic in plus, o poti gasi apoi si in Excel cu Insert>Function>(categoria User Defined), sau poti sa o tastezi direct intr-o celula. Ai scris-o - a aparut acolo.
Functia FormuleCn() primeste ca argument o referinta a unei celule sau regiuni, si intoarce numarul de celule care au formule.
Cod: Selectaţi tot
Option Explicit
Public Function FormuleCn(Rng As Range) As Long
Dim Rw As Long, Cl As Integer, FsCn As Long
For Rw = 1 To Rng.Rows.Count
For Cl = 1 To Rng.Columns.Count
If Left(Rng.Cells(Rw, Cl).Formula, 1) = "=" Then FsCn = FsCn + 1
Next
Next
FormuleCn = FsCn
End Function
Re: Cum testez daca o celula contine o formula
Multumesc tuturor de ajutor, cu raspunsul lui dinu am rezolvat problema.