Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

[Excel] automatsko popunjavanje formulara radi stampanja iz tabele

  • 45 odgovora
  • 30.746 pregleda

Najnovija ↓

Re: [Excel] automatsko popunjavanje formulara radi stampanja iz tabele 03.12.2007. u 00:54 · pre 230 meseci #41
krenuo da radim jedan nalog i nikako da se izvucem iz problema i greske koju mi izbacuje:

1. kad kliknem na dugme unos u spisak prabaci mi izabrane podatke na drugu stranicu ali se i sam exel prebaci na tu stranu (spisak) ne ostane na strani Nalog

2. kad pokrenem makro za brisanje nov unos
javi mi gresku. Ispravljao sam ga vise puta ali u ovoj liniji mi stalno javlja da nesto nije u redu

Range("H8").Value = ActiveWorkbook.Sheets("Spisak").Range("A65536").End(xlUp).Value + 1

i nikako da mi na strani Nalog u polju P8 uveca stanje brojaca za 1 (int.br.naloga)

3. Ovo sam pitao vec ranije ali nisam dobio odgovor konkretan nikada
kako da u nekom makrou ubacim komandu za automatski save (usnimavanje) nakon izvrsenja

Hvala

Re: [Excel] automatsko popunjavanje formulara radi stampanja iz tabele 03.12.2007. u 12:33 · pre 230 meseci #42
Problem koji si ti naveo javlja se kao posledica aktiviranja jednog pa drugog lista. Da bi ponovo aktivirao prvi list na kraju koda napiši:
Code:
Sheets("nalog").Select 


Iako kod radi u njemu ima puno nedostataka koje ti navodim.Da se ne bi stalno ponavljali pogledaj http://www.elitesecurity.org/t287256-0#1734021 tačku 2 i 3. U kodu nemaš komentara, pa je teško da se protumači šta si hteo da uradiš. Takođe i dalje koristiš referncu G13:M13 umesto samo G13 - pa i to otežava praćenje koda. Elem kod koji si napisao
Code:

Range("b5").Select
   Do
    If IsEmpty(ActiveCell) = False Then
       ActiveCell.Offset(1, 0).Select
    End If
   Loop Until IsEmpty(ActiveCell) = True

Pozicionira se na prvu praznu ćeliju u koloni B. Umesto petlje mnogo je efikasnije koristiti pozicioniranje "od kraja" tabele - formula koja je više puta navedena na ovom formum (npr. http://www.elitesecurity.org/t246081-0):
Code:
Range("B65536").End(xlUp).Offset(1,0).Select

Inače za prepisivanje sadržaja neke ćelije uopšte nije potrebno da je selektuješ i Copy/Paste nego je samo pridružiš vrednosti jedne ćelije i vrednost druge ćelije (objašnjeno u istoj temi)
Dakle umesto:
Code:

   Sheets("nalog").Select
   Range("G13:M13").Copy
   Sheets("spisak").Select
   ActiveCell.Offset(0, 0).PasteSpecial (xlPasteValues)

može jednostavnije npr.
Code:

Sheets("spisak").ActiveCell.Offset(0,0).Value = Sheets("nalog").Range("G13").Value 

i slično za ostale ćelije.
2/ Makro podrazumeva da na listu spisak u koloni A imaš unete redne brojeve. Pošto nemaš onda se javlja greška. Nije mi jasno ni zašto se broj naloga upisuje u H8 - zar ne treba u P8

3/ Komanda za snimanje aktivne radne sveske pod istim imenom
Code:
ActiveWorkbook.Save
Potpis
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
Re: [Excel] automatsko popunjavanje formulara radi stampanja iz tabele 04.11.2013. u 21:35 · pre 158 meseci #44
Ima nas koji smo još gori kad je u pitanju čupanje iz naftalina, ali ova tema mi je puno pomogla. Naravno imam pitanje.
Kako da sprečim unos podataka ako nisu popunjena određena "obavezna" polja koja sam npr označio "crvenom zvezdicom" i recimo da mi izbaci neku poruku tipa "UNESITE TAJ I TAJ PODATAK"

hvala na svim prethodnim postovima
Potpis
http://idealdale.webs.com/
Re: [Excel] automatsko popunjavanje formulara radi stampanja iz tabele 05.11.2013. u 00:05 · pre 158 meseci #45
Citat:
dokonjak: Kako da sprečim unos podataka ako nisu popunjena određena "obavezna" polja koja sam npr označio "crvenom zvezdicom" i recimo da mi izbaci neku poruku tipa "UNESITE TAJ I TAJ PODATAK"
Probaj koristiti Validation dijalog box i tab "Input Message". Kada korisnik klikne na ćeliju pojavit će mu se okvir u kojem piše uputa za unos podatka ili pogledaj tutorijal Obavezan unos podataka
Re: [Excel] automatsko popunjavanje formulara radi stampanja iz tabele 05.11.2013. u 13:16 · pre 158 meseci
izmenjeno 1 put, poslednji put dokonjak 05.11.2013. u 14:42
  1. dokonjak05.11.2013. u 14:42zapis iz teksta poruke
#46
Citat:
Probaj koristiti Validation dijalog box i tab "Input Message". Kada korisnik klikne na ćeliju pojavit će mu se okvir u kojem piše uputa za unos podatka ili pogledaj tutorijal Obavezan unos podataka


Uh, hvala Ivek na odgovoru, ali moj fajl je već prepun i data validationa i conditional formattinga. Nije mi za cilj da dam smernicu kako se popunjava list formular, odnosno pojedinih polja, već da sprečim da podaci budu poslati na list baza ukoliko nisu popunjena VEĆ obeležena obavezna polja. Obzirom da sa makroima radim po prvi put ova tema mi je pomogla da uradim ono što mi je potrebno. Medjutim mislim da je moje pitanje logičan nastavak teme i da bi još nekome moglo koristiti.
Dakle: Ako sve gore navedeno funkcioniše, kako da, u slučaju nekompletno popunjenog formulara pritiskom na makro naredbu, (dugme: unesi/štampaj/briši) umesto svih tih naredbi iskoči poruka npr "morate popuniti polje naziv firme"
A odgovor bi bio

Code:
If len(Range("A1").Value) = 0 Then
  msgbox "morate popuniti polje naziv firme"
 Exit Sub
End If
Potpis
http://idealdale.webs.com/
Odgovori
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme