Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pokretanje Macroa upisom teksta u ćeliju

[es] :: Office :: Excel :: Pokretanje Macroa upisom teksta u ćeliju

[ Pregleda: 189 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

shebez
Asistent
Beograd

Član broj: 340359
Poruke: 10
*.dynamic.sbb.rs.



Profil

icon Pokretanje Macroa upisom teksta u ćeliju28.07.2021. u 00:32 - pre 2 meseca
Pozdrav,
Pokušavam da napravim listu fakturisanih usluga.
Jedan red - jedna usluga, prve kolone sadrže podatke o usluzi i jedna kolona je da li je fakturisano. (po defaultu "NE")
Kada promenim u "DA" kako da napravim da mi u sledeće dve kolone automatski dodeli broj fakture i datum fakturisanja odnosno današnji dan?

Ja sam mislio da napravim neki macro ali ne znam kako da ga pokrenem promenom teksta u ćeliji...

tnx
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2875



+64 Profil

icon Re: Pokretanje Macroa upisom teksta u ćeliju28.07.2021. u 07:47 - pre 2 meseca
Pogledaj neki od linkova ovdje
 
Odgovor na temu

shebez
Asistent
Beograd

Član broj: 340359
Poruke: 10
89.216.107.*



Profil

icon Re: Pokretanje Macroa upisom teksta u ćeliju30.07.2021. u 08:45 - pre 2 meseca
Nisam baš uspeo da se snadjem :)
Mislio sam da je jednostavnije, ja kad napravim macro vežem ga uvek za istu ćeliju.
Ako je neko voljan da pogleda. Suština je da kad promenim status iz fakturisan "NE" u "DA" da mi dodeli broj fakture i ispiše današnji dan.

Tnx. Poz.
http://www.elitesecurity.org/poruka/fajluzporuku/4006501
Prikačeni fajlovi
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2875



+64 Profil

icon Re: Pokretanje Macroa upisom teksta u ćeliju30.07.2021. u 11:42 - pre 2 meseca
Na internetu postoji dosta primjera za automatsko unošenje datuma, a vjerujem i na ES-u ih ima.
Evo nekih VBA varijanti. (Da se odmah razumijemo, nisam VBA programer ali sam nešto isprobavao pa tako da sve ovo uznmeš sa rezervom.)

OPCIJA 1

U 'C2' ćeliju postavi formulu pa kopiraj dolje do zadnjeg reda (ova formula kao rezultat daje redni broj fakture). Ako želiš ovo sačuvati trajno tada u nekom momentu sa Copy/Paste -> Paste Special -> Values konvertiraš sve u tekstualni oblik bez formule.
Code:
=IF(B2="DA";"2021/"&ROW(A1);"")

U VBE u Code window na Sheet1 kopiraj ovu VBA macro naredbu
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 2 Then Exit Sub 'spriječava vba error ako se radnja ne odnosi na B stupac
        If Target.Column = 2 And Not IsNumeric(Target) Then 'odnosi sena text u B stupcu
            Range(Target.Address).Offset(0, 2) = Now() 'unosi datum i vrijeme u 2 stupca desno od B stupca nakon promjene podatka u B stupcu
        ElseIf Target.Column = 2 And Target = "" Then 'ako je ćelija u B stupcu prazna
            Range(Target.Address).Offset(0, 2) = "" 'ne vrši se unos ako je u B stupcu prazna ćelija
    End If
            '!!!!!!!!!!ovaj dio VBA treba doraditi da ne baguje ako vršiš kopiranje Validation List u B stupcu po sistemu drad-and-drop!!!!!!!
            If Target.Column = 2 And Target = "Ne" Then 'ako ćelija u B stupcu sadrži riječ Ne
                Range(Target.Address).Offset(0, 2) = "" 'ne vrši se unos ako je u B stupcu riječ Ne
            ElseIf Target.Column = 2 And Target = "Ne" Then 'ako ćelija u B stupcu sadrži riječ Ne
                 Range(Target.Address).Offset(0, 2) = Range(Target.Address).Offset(0, 2).ClearContents 'briše sadržaj ćelije u D stupcu u istom redu
            End If
End Sub

Ovaj VBA macro podržava Validation List i promjenu u B stupcu kao i brisanje sadržaja u istom stupcu (npr ako si pogriješio)
Funkcionira na način da u 'B' stupcu promjenom iz 'NE' u 'DA' automatski se unosi novi broj fakture i današnji datum u 'D' stupcu.
Ako ponovno promijeniš u Ne tada briše datum u D stupcu
Ako obrišeš ćeliju u kojoj se nalazi DA ili NE tada isto briše datum u D stupcu
Cijeli stupac 'C' formatiraj kao 'Date'

OPCIJA 2

U 'A' stupcu unosiš ime i prezime. Izborom DA u B stupcu preko formule prikazuje se broj fakture
Prvi korak je upis imena i prezimena. Automatski se unosi datum u 'D' stupcu.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count <> 1 Then Exit Sub 
    If Target.Column <> 1 Then Exit Sub
    Target.Offset(0, 3) = Date ' & " " & Time 'ako želiš dodati i vrijeme ukloni prvi apostrof
End Sub

Drugi korak je izbor 'DA' iz Validation List u 'B' stupcu
S obzirom na formulu automatski će se prikazati broj fakture uvećan za 1 u odnosu na broj iznad.

OPCIJA 3

Ako želiš u jednom potezu prikazati broj fakture i datum, tada probaj ovaj VBA macro
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("$B$2:$B$100")) Is Nothing Then
        Target.Offset(0, 2).FormulaR1C1 = Now() 
    End If
End Sub

Ovaj VBA macro podržava Validation List, dakle promjenom u 'B'stupcu bilo da mijenjaš 'NE u DA' ili 'DA da NE' u oba slučaja će se prikazati današnji datum ali ne i broj fakture (ovo može može biti problematično?).

Naravno, VBA programer može isprogramirati da se također automatski pomoću macroa doda i broj fakture (ali za to moraš od nekog drugog tražiti pomoć jer ja nemam toliko vremena istraživati).

I na kraju spremi Workbook u formatu *.xlsm (*.xls)
Sve u svemu ovo su neki primjeri koje bi ti možda morao doraditi s obzirom na tvoju workbook i organizaciju podataka.
LP Ivan
Prikačeni fajlovi
 
Odgovor na temu

shebez
Asistent
Beograd

Član broj: 340359
Poruke: 10
*.dynamic.sbb.rs.



Profil

icon Re: Pokretanje Macroa upisom teksta u ćeliju30.07.2021. u 15:16 - pre 2 meseca
Kralju!!!

TNX
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2875



+64 Profil

icon Re: Pokretanje Macroa upisom teksta u ćeliju30.07.2021. u 15:21 - pre 2 meseca
Ako želiš konvertirati brojeve fakture i datume u tekstualnu/brojevnu vrijednost tj. Izbjeći formule prilikom svakog unosa evo još jedna varijanta.
(Kao što sam rekao VBA treba doraditi)
LP
Prikačeni fajlovi
 
Odgovor na temu

[es] :: Office :: Excel :: Pokretanje Macroa upisom teksta u ćeliju

[ Pregleda: 189 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.