Excel majstri pomoč

fikus

kaktus
23. apr 2008
2.528
14
38
Citat:
Uporabnik amacar pravi:
Skopiraš to v makro, pa poženeš, pa bi moralo spremenit

Sub makro()
Dim stevec As Integer
stevec = 4
While Cells(stevec, 2) <> ""
If Cells(stevec, 2) = 1 Then
Cells(stevec, 2) = "PO"
ElseIf Cells(stevec, 2) = 2 Then
Cells(stevec, 2) = "TO"
ElseIf Cells(stevec, 2) = 3 Then
Cells(stevec, 2) = "SR"
ElseIf Cells(stevec, 2) = 4 Then
Cells(stevec, 2) = "ČE"
ElseIf Cells(stevec, 2) = 5 Then
Cells(stevec, 2) = "PE"
ElseIf Cells(stevec, 2) = 6 Then
Cells(stevec, 2) = "SO"
ElseIf Cells(stevec, 2) = 7 Then
Cells(stevec, 2) = "NE"
End If
stevec = stevec + 1
Wend
End Sub

Tole zgleda precej razumljivo
cool-1.gif

A v oklepaju(stevec, 2) pa pomeni stolpec B?
Pa to na koncu ne razumem End if stevec = stevec + 1
confused-1.gif
 

amacar

Majstr
29. apr 2010
4.175
490
83
V excelu izbereš ogled, nato makri, ter vneseš ime makra in daš ustvari, nato prilepiš to spodnjo kodo (dodajam razlage)

Dim stevec As Integer //spremenljivka kot int, ne rabiš vedeti
stevec = 4 // v kateri vrstici bomo začeli gledati (glede na tvoje podatke od 4 naprej)
While Cells(stevec, 2) <> "" //dokler ne naletimo na prazno celico, v stolpcu B (zaradi 2 v Cells(stevec,2), 3 je C itd...)
If Cells(stevec, 2) = 1 Then //poglej če je na tem mestu vnesena 1
Cells(stevec, 2) = "PO" //če je nastavi na PO
ElseIf Cells(stevec, 2) = 2 Then //itd
Cells(stevec, 2) = "TO"
ElseIf Cells(stevec, 2) = 3 Then
Cells(stevec, 2) = "SR"
ElseIf Cells(stevec, 2) = 4 Then
Cells(stevec, 2) = "ČE"
ElseIf Cells(stevec, 2) = 5 Then
Cells(stevec, 2) = "PE"
ElseIf Cells(stevec, 2) = 6 Then
Cells(stevec, 2) = "SO"
ElseIf Cells(stevec, 2) = 7 Then
Cells(stevec, 2) = "NE"
End If //zaključimo IF
stevec = stevec + 1 //se premaknemo v naslednjo vrstico
Wend //zaključimo While
 

fikus

kaktus
23. apr 2008
2.528
14
38
Odlična razlaga!
Praktično vse razumem
cheer.gif


Ampak še vedno mi ne dela
frown-1.gif

Izberem ogled nato makri nato posnemi makro vpišem naslov, ko pa v opis hočem prilepiti napisano mi pa ne dovoli prilepiti niti, če pritisnem ctrl+V???
Kaj spet delam narobe?
Tipkam pa v opis lahko a bo treba ročno pretipkati vse?

Potem me pa zanima še naslednje:
1. A lahko makro velja samo za en delovni list in ne za vse liste, ker ponudi samo opcijo za cel delovni zvezek?
2. A za ostale stolpce potem makro enostavno nadaljujem ali naj napišem novega?
3. A se makro shrani kar v sam delovni list in dela tudi po ponovnem inštaliranju excella ali je treba vse napisati znova?
 

amacar

Majstr
29. apr 2010
4.175
490
83
Korak 1. (vpišeš ime in pritisneš ustvari)


in 2. (odpre to okno, lahko prilepiš ni treba pretipkati)


3. Poženeš s klikom na gumb zaženi
3.png


1.) velja za celoten dokument, za različne delovne liste se na celico sklicuješ tako: Worksheets("ime lista").Cells(vrstica, stolpec) (primer: Worksheets("Uvoz podatkov").Cells(1, 1) = "PO")
2.) lahko kopiraš kar v enak dokument spodaj, če boš vedno želel to pognati hkrati, sicer naredi posebej pa poženeš vsakega po želji.
3.) Makro se shrani v dokument, ampak je potrebno tako tudi shraniti (excelov delovni zvezek z makri)
 

fikus

kaktus
23. apr 2008
2.528
14
38
Tole mi je končno uspelo usposobit ampak po ponovnem odpiranju mi ne dela več-napiše, da varnostne nastavitve ne omogočajo makrov, ko jih omogočim pa pri novem kopiranju ne preimenuje več 1 v PO ampak moram znova pognati makro.
Nekako ne dela tako kot bi rad se bo treba še bolj poglobiti v to.

Rad bi, da bi vse delalo avtomatsko brez stalnega mojega vmešavanja.

Tista Buckotova zadeva tudi ni napačna samo ne razumem je čisto dobro, še tistega načina z LOOKUP bi se rad naučil, ker ni makrov.

Sem mislil, da bo to precej bolj preprosto.
 

majaron

Majstr
28. mar 2009
1.061
416
83
Leska ti je makro spisal že kak dan nazaj, uporabi tistega saj dela točno to kar bi rad.
 

fikus

kaktus
23. apr 2008
2.528
14
38
Tista MID funkcija bi bila super samo ne vem kako naj jo uporabljam, da bi delalo?
Pa isti stolpec bi se moral preimenovati-torej stolpec B brez dodatnega stolpca.

Makra pa ni dodanega nobenega-vsaj vidim ga ne, dam ogled makrov in ne pokaže nobenega.

Tisti včerajšnji makro bi bil super samo treba bi bilo, da bi delal avtomatično tudi za naslednje vnose podatkov brez stalnega ponovnega zaganjanja makra, pa varnostne nastavitve bi bilo treba popraviti tako, da mi ne bi vedno znova težili z opozorili in onemogočenim makrom.
 

majaron

Majstr
28. mar 2009
1.061
416
83
Koda od Leske dela točno kar rabiš.

Odpri Excel in stisni ALT+F11. Klikni na worksheet in kodo skopiraj v svoj zvezek. Vse kar moraš popravit je, da namesto enke, ki predstavlja stolpec A, spremeniš v 2, ki predstavlja stolpec B. To je vse. Ko boš v stolpec B vpisal številke od 1 do 7 se bodo avtomatično spremenile v dan v tednu. Koda deluje za nove vnose, ne za že obstoječe, ampak saj to rabiš. Ko boš uvozil podatke iz csv datoteke v ta stolpec, se bo avtomatsko spremenilo.
 

fikus

kaktus
23. apr 2008
2.528
14
38
Ma jaz sem prebutast za te makre.

1. Najprej ne znam nastavit, da me ne bi stalno opozarjalo, da naj omogočim vsebino-to naredim pa po naslednjem zagonu spet napiše, če želim omogočit makre.

2. Kako naj to skopiram drugam odprem ta VBA not skopiram kodo ampak potem nič ne dela in ne morem shranit???

3. Povrhu mi je pa ta makro od Leske čisto nerazumljiv in ne znam napisati še enega za druge stolpce-mi je bil tisti makro od Amacarja precej bolj razumljiv samo ne vem zakaj ne dela za nove vnose?

4. A preproste formule pa ni možno vpisati v Excel?
Bučkotova zadeva mi je zelo simpatična samo treba bi bilo, da dela samo na obstoječem listu brez avtomatičnega uvažanja podatkov.