incerc sa fac un fisier de pontaj salariati

Informatii despre cum se utilizeaza Microsoft Excel 2003. Calcule, Formule, Functii, Tabele pivot, Analiza datelor, etc
Scrie răspuns
Avatar utilizator
gecs
Moderator
Moderator
Mesaje: 2311
Membru din: Sâm Aug 15, 2009 10:05 am
Localitate: Bucuresti

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de gecs » Joi Noi 18, 2010 8:48 pm

Pai de ce nu lamuresti aceste neclaritati inca de pe acum, daca le-ai observat?
E liber la comentarii pentru oricine.

L.E. Am citit articolele indicate de tine si n-am gasit nicio neconcordanta intre cele specificate in lege si cele avute in vedere la elaborarea solutiei din fisierul atasat. Daca ai remarcat ceva, ar fi bine daca ne-ai spune si noua.

contabilul
Mesaje: 61
Membru din: Sâm Noi 13, 2010 5:57 pm

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de contabilul » Joi Noi 18, 2010 9:26 pm

chiar raman uimit de ce se poate face cu excelu asta.
Problema vazuta in prima faza - este cel mai bine sa se faca calcule de genul adunarilor (co+co+co= 3 zile co). Daca nu pun nimic la nici o zi imi arata din start 176 ore conc fara plata ceea ce poate fi fals (angajatul se angajeaza abia la jumatatea lunii). De aceea nu cred ca isi au rostul acea coloana cu ore normate / luna (aplicandu-se doar daca angajatul e in luna integrala) si nici acel calcul de concediu fara salar.

Ca si idee - ceea ce cred ca ar ajuta multa lume in realizarea unui pontaj (si crede-ma ca acesta dupa cum se arata - la doar 36 ore de la idee e extraordinar) ar fi bine de retinut anumite lucruri:
1. un pontaj trebuie sa fie cat mai simplu de operat tocmai ca sa nu dea probleme de gandire si interpretare
2. un pontaj trebuie sa arate pe baza unei selectii lunare campurile hasurate ca weekend sau sarbatoare (pentru intrajutorare in vederea completarii, de regula lunare si nu zilnice)

3. informatiile dintr-un pontaj trebuie folosite de un contabil astfel:
- Co = concediu de odihna (platit) - se calculeaza pe zi
- Cb = concediu de boala (platit) - se calculeaza pe zi
- Cfs = concediu fara salar (neplatit) - se calculeaza pe zi
- Abs = absente nemotivate (neplatit) - se calculeaza pe ore
- Inv = ore invoit (neplatit) - se calculeaza pe ore (diferenta dintre Inv si Abs o reprezinta acordul angajatorului care exista/nu exista)
- No = ore noapte (platite) - se calculeaza pe ore (conteaza deoarece trebuie platite cu un spor la salar de x %)
- S/D = sambata/duminica (platite) - se calculeaza pe ore (conteaza deoarece trebuie platite cu un spor la salar de x %)
- SL = sarbatoare legala (platita) - se calculeaza pe ore (conteaza deoarece trebuie platite ca ore suplimentare)
4. ce vad eu ca ar fi necesar ca introducere intr-o casuta aferenta unei zile este
- cifre care sa arate numarul de ore lucrate intr-o zi (de la 1 la 16 maxim)
- texte de genul Cfs, Co, Cb care sa poata fi pus in locul numarului de ore deoarece nu se poate decat ori cifre ori aceste optiuni de litere (optiuni care ocupa intraga zi; nu pot fi in concediu fara salar sau de boala sau odihna doar 1/2 zi)
- problema e la celelalte texte care pot sa fi atasate unei cifre (5 ore lucrate + 3 ore absente/invoit) sau sa fie parte din ea (8 ore lucrate din care 2 ore Noapte)
- sambata / duminica ar trebui sa ridice probleme deoarece aceste informatii s-ar deduce din insasi hasurarea acestora. E imposibil ca in aceasta perioada sa fie texte(Co, Cfp, Cb - se calculeaza doar la zilele lucratoare, astfel nu se trec Co,Cfp, si Cb sambata si duminica, aceste casute ar ramane necompletate) - eventual o atentionare de genul la fiecare completare a acestor casute de weekend (Atentie! introduceti date intr-o zi de sambata / duminica). Cu toate acestea se pot introduce in schimb cifre (1...16, ore lucrate + ore abs/inv, ore lucrate din care ore noapte, exact ca intr-o zi normala)
- sarbatoarea legala se plateste integral de unitate ca si cum s-ar ponta norma intreaga. Problema e ca desi se ponteaza normal salariatul ar trebui sa stea acasa. Totusi sunt cazuri (ca de ... suntem romani) in care se lucra in unitati si de sarbatori. In aceste cazuri ar trebui sa se permita introducerea celor x ore normate (eventual sa apara automat) + posibilitatea adaugarii unor ore suplimentare care sa-i fie platite angajatului)
5. de aceea o simpla casuta in care sa apara toate aceste date e greu de realizat. Eu m-am gandit intocmai ca si in fisierul intial adaugat ceva de genul unei casute mai mari in care sa se poate introduce Co, Cfp, Cb sau 1....16 si alaturat imediat in dreapta lui o serie de 3 casute verticale care sa corespunda unor valori: ore abs (prima), ore inv (a 2-a), (acestea ar fi de genul 5 lucrate + 2 absente + 1 invoiri) iar a 3-a casuta sa imi afiseze orele de noapte (acestea ar fi de genul 12 lucrate din care 4 de noapte). Orele de sambata / duminica + cele de sarbatori ar rezulta din insasi coloanele aferente acelor zile.
6. salvare lunara save as ActiveWorkbook.SaveCopyAs ("C:\Pontaje\Pontaj_" + Trim(Str((Range("n1").Value)) + ".xls")) tt = "A fost creat cu succes fisierul 'C:\Pontaj\Pontaj_" + Trim(Str(Range("n1").Value)) + ".xls' " + Chr(13) + Chr(10) + "cod fiscal + an + luna pontaj" x = MsgBox(tt,vbInformation, "Informatie")" care sa permita utilizatorilor salvarea lunara a unui pontaj si vizualizarea lui ulterioara

Lung textul dar sper sa fie de folos

Avatar utilizator
gecs
Moderator
Moderator
Mesaje: 2311
Membru din: Sâm Aug 15, 2009 10:05 am
Localitate: Bucuresti

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de gecs » Joi Noi 18, 2010 10:29 pm

Deocamdata un raspuns pe puncte:

3...
Reiau discutia legata de absenta, invoire, concediu fara salariu: toate acestea din punct de vedere al contabilitatii sunt echivalente, pentru ca nu sunt platite.
- Co si Cb se pot exprima in zile fara nicio problema (mici modificari in formule);
- In final, si Cfs cred ca va fi calculat in ore, chiar daca poate fi exprimat in zile + absente si invoiri exprimate in ore, pentru ca astea sunt unitatile de timp care nu se platesc;
As dori o parere legata de varianta de compensare a orelor de absenta sau invoire cu orele suplimentare - din cate am citit si in articolele din codul muncii indicate de zisu, chiar se recomanda ca forma de recompensa pentru orele suplimentare compensarea cu timp liber echivalent in urmatoarele 30 de zile. Dupa parerea mea aceasta simplificare ar fi si posibila si de dorit, dar ... cred insa ca am o solutie si pentru a avea informatia legata de orele de absenta sau invoire intr-o singura celula impreuna cu orele lucrate ;)

4...
- se poate scrie o cifra de la 1 la 16 in orice celula, fara probleme;
- abrevierile Cfs, Co, Cb pot fi folosite in orice celula fara probleme si se poate modifica formula folosita la Data Validation astfel incat in zilele de sambata, duminica si sarbatorile legale acest lucru sa nu fie posibil, iar acolo sa poata fi folosite doar celelalte notatii;
- solutia la care ma gandesc pentru defalcarea pe ore (zi, absenta, invoire, noapte) e tot aceea cu o expresie cu separatori: [ore_zi][separator][ore_specifice_separatorului], unde ore_zi poate fi intre 0 si 16, separatorii pot fi: A(bsenta), I(nvoire), N(oapte), iar ore_specifice_separatorului o cifra intre 1 si 8, dar suma dintre ore_zi si celalalt numar (celelalte numere) sa nu depaseasca 8, daca separatorii sunt A sau I si sa nu depaseasca 16, daca separatorul este N (e posibila, de exemplu, o expresie de forma 12N4 = 12 ore de zi + 4 ore de noapte, dar nu e posibila o expresie de forma 7I2 pentru ca 7+2>8 - ar trebui 7I1). Aceste verificari se pot face intr-o a doua regula de formatare conditionata si daca nu se respecta conditiile, celulele vor fi formatate cu fond rosu indicand in felul asta o eroare de introducere a datelor. Datele ar fi mai usor de introdus de la tastatura, dar combo-ul asociat lui Data Validation de tip list e util pentru ca se pot nota in acea lista toate combinatiile posibile pentru expresiile admise (chiar daca lista devine foarte lunga) si daca expresia folosita nu e in lista se semnaleaza eroarea si nu se permite introducerea ei. Ar fi posibile si expresii formate prin combinatia oricator separatori 5A2I1N4 - 5 ore de zi + 2 ore absent + 1 ora invoit + 4 ore noaptea. O asemenea solutie nu e cu nimic mai complicata din punctul de vedere al functionalitatii in Excel fata de solutia cu mai multe randuri pentru un angajat.

6. Despre partea de vba propun sa vorbim dupa ce lamurim restul, pentru ca "salvarea lunara" nu e chiar asa simpla si posibil de automatizat doar din cateva linii de cod - mai exista si posibilitatea de a edita fisierul, mai exista si varianta in care am modificat ceva dar nu vreau sa salvez pentru ca intre timp am aflat ca modificarile nu sunt corecte si inca n-am datele necesare...

Poate ar fi bine sa pui o macheta, fara formule, cu varianta cu mai multe randuri pentru un angajat si cu coloanele de totaluri pe care le ai in vedere la sfarsit.

Textele pot fi oricat de lungi - important e sa comunicam si sa ne intelegem :D.

Avatar utilizator
Seductiv
Mesaje: 35
Membru din: Sâm Aug 21, 2010 2:38 pm

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de Seductiv » Joi Noi 18, 2010 11:13 pm

@contabilul: legislatia in vigoare nu stabileste numarul de ore lucrate/zi la maxim 16. Se pot lucra si 24 ore/zi.

smcsa
Mesaje: 2805
Membru din: Mar Sep 29, 2009 7:29 pm
Localitate: Timisoara

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de smcsa » Vin Noi 19, 2010 8:15 am

Nope, eu aveam nelamurirea asta ;)

zisu
Mesaje: 50
Membru din: Vin Mar 26, 2010 8:38 am

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de zisu » Vin Noi 19, 2010 9:11 am

Imi cer scuze pentru ca timpul nu mi-a permis sa vin cu mai multe lamuriri in mesajul anterior.
In cele ce urmeaza propun sa lamurim situatia absentelor.
Tipuri de absente:

CO - concediu de odihna
CM - concediu medical
EV sau EVD - concediu pentru eveniment deosebit (nastere copil, Casatorie, Deces....)
L - liber ( sunt situatii in care angajatorul este nevoit sa ii acorde salariatului zile libere platite. Ex: 1. cazul donatorilor de sange - conform Hot. 1364/04.10.2006 publicata in M.O. 820/05.10.2006, art.11, alin. b; 2. in situatia femeilor insarcinate; etc)
I - invoire (timp liber neplatit)
N - absenta nemotivata ( interval de timp pt care angajatul nu are aprobarea de a absenta)

Avatar utilizator
gecs
Moderator
Moderator
Mesaje: 2311
Membru din: Sâm Aug 15, 2009 10:05 am
Localitate: Bucuresti

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de gecs » Vin Noi 19, 2010 10:15 am

In sensul in care pontajul foloseste nu doar la calcularea salariului ci reprezinta si fisa de prezenta zilnica a angajatului, se pot inscrie toate aceste informatii legate de:
- Co - concediu de odihna;
- Cb (Cm) - concediu de boala (medical);
- Cfp - concediu fara plata;
- L - zi libera;
- E - eveniment, zi libera pentru un eveniment deosebit
toate cele de mai sus fiind notatii pentru o zi intreaga. Ele se pot totaliza in zile sau/si ore in coloanele din dreapta pontajului.

Problema care ar trebui lamurita e aceea legata de notatia orelor dintr-o zi in functie natura evenimentelor:
1:16 - ore lucrate ziua;
An - absenta, unde n este numarul de ore;
In - invoire, unde n este numarul de ore;
Nn - ore lucrate noptea, unde n este numarul de ore.

Exista o diferenta intre cele doua tipuri de notatii care poate fi speculata pentru analizarea datelor inscrise in pontaj si realizarea calculelor din coloanele cu totaluri. Diferenta consta in aceea ca primul caracter al unei expresii folosite in cazul unor notatii care se refera la intreaga zi e o litera, iar in cazul expresiei care indica modul de repartizare al orelor unei zile primul caracter e o cifra. Pentru conformarea la aceasta regula, o tura de noapte de 8 ore va fi inscrisa ca 0N8. Se poate merge cu standardizarea acestor expresii pana intr-acolo incat orice inregistrare pentru o zi cu ore lucrate sa fie de forma nAnInNn - ar fi chiar mai usor pentru interpretarea expresiei. In plus, literele folosite ca separatori (sau descriptori - cum vrem sa le spunem) in aceasta expresie nu se regasesc printre literele folosite in expresiile din notatiile pentru o zi intreaga. Existenta acestei diferente dintre cele doua tipuri de expresii folosite (primul caracter litera sau cifra) simplifica testele necesare prelucrarii corecte a datelor inscrise intr-un asemenea document.

Fisierul atasat de mine anterior functioneaza in felul urmator: exista o serie de nume asociate unor array-uri (prelucrari ale datelor existente fizic in foaia de calcul) de 31 de pozitii (rand) care contin interpretarile in cifre (ore - posibil de transformat in zile pentru notatiile din prima categorie) ale fiecarei expresii folosite in pontaj; aceste array-uri isi schimba continutul de la rand la rand pentru ca referintele folosite in formulele care stabilesc legatura intre numele respectiv si date sunt relative in privinta numarului randului din foaia de calcul - pantru randul 8 aceste array-uri contin prelucrarile datelor din coloanele H:AL de pe randul 8, pentru randul 9 contin prelucrarile datelor din aceleasi coloane, dar de pe randul 9 s.a.m.d astfel incat formulele din coloanele cu totaluri care refera aceste nume (array-uri) prelucreaza datele specifice randului pe care sunt inscrise, chiar daca formulele sunt identice in aparenta.

Problema nu e ca e imposibil de inscris aceste informatii - problema e ca e greu de acceptat modificarea modului de inscriere a acestor informatii pentru ca deja exista niste cutume in acest sens. Cutumele alea sunt mai vechi decat folosirea computerului la inregistrarea unui pontaj si mai greu de "miscat" in mintea oamenilor. Din punct de vedere al prelucrarii informatiilor dintr-un tabel astfel organizat (pentru ca un pontaj e in final tot un tabel) e mult mai dificil si mai laborios, neproductiv si inadecvat la sculele si metodele folosite in programele de baze de date si in Excel, daca aceste informatii nu sunt inscrise intr-o singura celula pentru o zi/angajat. Daca nu se accepta compromisul de a folosi o notatie complexa (fie ca cea pe care am incercat eu s-o incropesc aici, fie alta) nu se va ajunge la o "standardizare" acceptabila a acestui tip de document foarte usor, iar prelucrarile necesare, ca si adaptarea tabelului la un numar diferit de angajati de la caz la caz, vor fi mai dificile si cu probabilitate mai mare de aparitie a erorilor. In cazul in care se accepta ideea ca toata informatia sa fie inscrisa intr-o celula/zi/angajat adaptarea tabelului din fisierul atasat anterior la o situatie cu mai multi angajati nu implica altceva decat selectarea celulelor de pe ultimul rand al pontajului si copierea lor in jos, pana la atingerea numarului dorit de randuri in tabel.

Daca putem lua o hotarare in sensul lamuririi modului in care sa se faca aceste notatii in pontaj, fie cum am propus eu, fie sub alta forma (cu mai multe celule dispuse pe rand sau coloana pentru o zi/angajat) putem trece mai departe - daca nu, nu. Pentru a doua varianta astept o propunere concreta. Oricum ar fi aceasta organizare a datelor (cu randuri si/sau coloane suplimentare) ea va modifica substantial varianta anterioara, asa ca nu conteaza daca informatia va fi pe randuri sumplimentare sau/si pe coloane suplimentare.

contabilul
Mesaje: 61
Membru din: Sâm Noi 13, 2010 5:57 pm

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de contabilul » Vin Noi 19, 2010 12:31 pm

Seductiv scrie:@contabilul: legislatia in vigoare nu stabileste numarul de ore lucrate/zi la maxim 16. Se pot lucra si 24 ore/zi.
corect, dar eu incerc aplicarea unui pontaj real (nu cred ca exista persoana care sa fie pontata 20 ore in activitate intr-o zi. Sau daca e, sa vedem ce parere au cei de la itm de asta. Eu am incercat cu 16 sa ma apropii de realitate. Daca ma insel va rog sa ma anuntati. Exista in mediul privat (acest pontaj se refera strict la mediul privat, nu vad primarie sau unitate bugetara aplicand acest pontaj) persoane care sa fie obligate la prestarea unei activitati de peste 16 ore / zi ? chiar si cu pauza ulterioara de 24,36 ore etc ...


gecs scrie:. Problema nu e ca e imposibil de inscris aceste informatii - problema e ca e greu de acceptat modificarea modului de inscriere a acestor informatii pentru ca deja exista niste cutume in acest sens. Cutumele alea sunt mai vechi decat folosirea computerului la inregistrarea unui pontaj si mai greu de "miscat" in mintea oamenilor.
exact, eu incerc sa atasez un fisier excell in 20-30 min care sa fie extrem de usor de utilizat de toti contabilii (care imposibil sa nu se fi lovit pana acum de pontaje sau calculatoare), dar si de patronii care doresc intocmirea acestora (practic ei vor duce aceste pontaje la contabilitate). Daca punem 30 litere, o mie de posibilitati, se vor apuca de scris hartii. Corect ????

Avatar utilizator
gecs
Moderator
Moderator
Mesaje: 2311
Membru din: Sâm Aug 15, 2009 10:05 am
Localitate: Bucuresti

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de gecs » Vin Noi 19, 2010 12:42 pm

contabilul scrie:...
exact, eu incerc sa atasez un fisier excell in 20-30 min care sa fie extrem de usor de utilizat de toti contabilii (care imposibil sa nu se fi lovit pana acum de pontaje sau calculatoare), dar si de patronii care doresc intocmirea acestora (practic ei vor duce aceste pontaje la contabilitate). Daca punem 30 litere, o mie de posibilitati, se vor apuca de scris hartii. Corect ????
Asta cu scrisul de hartii n-o inteleg...

Probabil ca exista chiar mii de posibilitati rezultand din cele scrise mai sus, adica inregistrarea tuturor variantelor de ore lucrate ziua combinate cu ore lucrate noaptea combinate cu ore absente combinate cu ore de invoire. Si ce iar nu inteleg e ca daca acest pontaj e necesar DOAR PENTRU CONTABILITATE de ce e importanta difentierea pe CFS, absent si invoit pentru ca TOATE SITUATIILE ASTEA NU SE PLATESC - asta e numitorul lor comun din punctul de vedere al contabilitatii.

contabilul
Mesaje: 61
Membru din: Sâm Noi 13, 2010 5:57 pm

Re: incerc sa fac un fisier de pontaj salariati

Mesaj de contabilul » Vin Noi 19, 2010 1:00 pm

vedeti putin cum arata aceasta poza ..
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.
Ultima oară modificat Vin Noi 19, 2010 1:09 pm de către smcsa, modificat 1 dată în total.
Motiv: redimensionata imaginea

Scrie răspuns

Înapoi la “Intrebari despre Excel 2003”