Professional Documents
Culture Documents
MACROS EN EXCEL
Parte IV
Aprenderemos comoejecutarunahoja deExcel y activarautomáticamente
un Macro,como
ordenar información, como convertirla en mayúscula o minúscula y como crear
modificaciónautomáticade X información
PrivateSubCommandButtonl_ClickQ
ComboBoxl.Adrlltemf'Jorge"
ComboBoxl.Adilltem " Hochstettter"
ComboBoxl.Addltem"I)iez"
ComboBoxl.Addltem"Jorge "
PrivateSubCommandButtonl_Click0
For X=l to 50
Listboxl.Addltem str(x)
Next
End Sub
Por lo tanto el Listboxl va a guarda;rlos número del 1 al 50, sin necesidadde irlos
poniendode uno por uno, imagínatelo.
Listboxl.Addlfem "1"
Listboxl.AddI:tem"2"
' Listboxl..Addltem"3"
PrivateSubListBoxl_Click0
Range("49").Select
ActiveCellFdrmulaRl C1 : ListBox
End Sub
Así de de fácil cadavezqueescojasun datoque seencuentreen un Listboxl lo enviaraa la
celda a9, escribiéndoloahí. Si 1o deseashacer lo puedeshacer en ur Combobox,solo
cambiaListboxl. por Comboboxl y seacabo.
PrivateSubUserForm_ActivateQ
ComboBoxl.Addltem "Jorge"
ComboBoxl.Addltem "Hochstetter"
ComboBoxl.Addltem"I)iez"
ListBoxl.Addltem "Jorge"
ListBoxl.Addltem "Hochstetter"
ListBoxl.AddItem,, Dfez,,
End Sub
ActiveCell.Offset(l0, 0).Select
Así funcionaesto.
SubAuto_openQ
Load UserForml
UserForml.Show
EndSub
A continuaciónveremoscomoordenarunainformaciónpor ordenalfabéticaascendente, es
un cédigo muy completo y bueno que te permite localizar los datos y ordenarlos,sin
pasarseun renglónen blanco.
el siguienteejemploy aprendamos
Observemos de el:
PrivateSubCommandButtonl_Cticke
li'r..],,Úir¡5,{.'i1,..':,'l:l';li;'].'.;.l.::!i';:i:,"',.i¡j¡í'¡;1¡¡11¡;,ll'...*Í:ll:31i:.;'ii¡,.*i,neiiiÍ'i',lilr.,;Lli¡ri;i::!il.
Range("a10").Select
ActiveCelLoffset(-1,0).Select
}.¡;;*.¿i.-.Í..tií¡:ttsg¿{arü'¿e¡¡l¿l'¡n.'lg.'itll+q,.:[{i,s;¡etl;',n|tll¿l'li,...dil{r;1iÉ.j:.ül,i,',¡',*¡¡,.r'{*tlli,¿*l¡llÍÉr¡¡l+
.i:¡ic''"ri.e]iii uii¡r;i:o, i;li;rt:,:-';i.l:,:,
ij,. itÍ.ief;.i,r,lt¡r:i:i,iii,i¡
, e;¿ +:Ll,:r;,i¡,t,,::
r'l:,i.
celdaactiva= ActiveCell.Address
. . ii: l] . . . ¡ . lt ' :.,i .:' .r:" i ' ti ,l i f¡i i ü r' .,.u l ¡;i i ' ,Í1 i i i ' .1r, irii-rr.l
¡l;
.j¡.l'li.ri]]']s!;.óe[i;udú¡ti.l,.,'j,¿1;aÍ¡¡,.r.']liií.,.+Juc.l'g;ti:;l.i;n;'ri'gl,l;;'^¡.i¡i,j¡q¡.;i;l¿i.::::,;-,i'.1'
il,i. ,tl,.ii.i
llir¡:lg;,in iil-t ó
iü: ; . t , *s lt . *¡ :o i ri i g u l 4 .:!.,$ ;-rí¡f,t* s ' .l e .l ,l ¡..' tn+ i r' uü{,x:l .¡l ' ' 3* {,.fg¡.e¡i ,}f;l l o::ü..l i rí,;f,]l ' g." rl fr¡r . ; .
¡i,:',;:',r,ai'! qr.ltlrtÍ in-i ¡;r¡nil+:;; S{.rlii:i,t,¡.rit:i¡:,.1t:t:,¡:j,t¡,i,
¿i:tr,ltrti,ijrj',tlrliil,i,¡
End Sub
PrivateSubCommandButtonl_Clickfl
Range("a10").Select
Loop
End Sub
Copiael siguientecódigo;
PrivateSubCommandBuüonl_Clickfl
Range("A9").Select
Selection.EntireRow.Insert
TextBoxl : Empty
TextBox2 : Empty
TextBox3: Empty
TextBoxl.SetFocus
End Sub
PrivateSubCommandButton2_Click$
ActiveCell.Offset(0,I ).Select
TextBox2: ActiveCell
ActiveCell.Offset(0,1).Select
TextBox3: ActiveCell
noencontro:
End Sub
Label4 - 'r9rl
Range("a9").Select
TextBoxl : Empty
TextBox2 : Empty
TextBox3 : Empty
Textlloxl.SetFocus
End Sub
PrivateSubTextBoxl_ChangeQ
Rem si nosdamoscuentala etiqueta4 sirve para llevar el renglén donde introriueimss
nosdatos o lcs ¡cr*tiil}*armos,'nsá
que ca¿{*texth{ix qile F¡"ogrf¡ffiermos
debe l!,ev;¡restas
Iimeas.
Range("A"+ Label4).FormulaRl C I : TextBoxl
End Sub
Private SubTextBox2_ChangeQ
Range("B"+ Label4).FormulaRl
Cl : TextBox2
End Sub
PrivateSubTextBox3_Change0
Range("C"+ Label4).FormulaRl
Cl : TextBox3
End Sub