Diferencia Entre Range y Cells

19
Diferencia entre Range y Cells 04/05/2013 by Fernando Santos | 3 Comments Los objetos range y cells en la mayoría de casos pueden ser utl!ados sn dstnc"n alguna# sn embargo $ay casos puntuales donde se recomenda el uso de uno de los dos% USO COMÚN Para seleccionar una celda &jemplo' S se (uere selecconar la celda )C2*# se tene dos opcones% +ange,)C2*-%select o Cells,2#3-%select . cells,#j- # donde la j columna j% Para dar valor a una celda &jemplo' S se desea darle alor a la celda )C2* 20# se tene dos opcones +ange,)C2*-% alue 20 o Cells,2#3-% alue 20 PARTICULARIDADES Objeto Range 6ermte selecconar mas de una celda% &jemplo' range,)71'85*-%select .&l objeto cells # no permte selecconar mas de una celda% Objeto Cells &s compatble con selecc"n de celdas bajo un patr"n de 9ormula% La entaja del uso del objeto cells# es permtr ncular 9uncones num:rcas al uso de celdas y/o a su selecc"n% &jemplo' Se desea conocer la suma (ue de la combnac"n de una la y columna# entonces se establece el sguente programa' Sub celdasuma,- For 1 ;o 10 For j 1 ;o 10 Cells,# j-%<alue = j >e?t >e?t j &nd Sub

description

detalles de diferencias entre range y cells

Transcript of Diferencia Entre Range y Cells

Diferencia entre Range y Cells04/05/2013 by Fernando Santos | 3 CommentsLos objetos range y cells en la mayora de casos pueden ser utilizados sin distincin alguna, sin embargo hay casos puntuales donde se recomienda el uso de uno de los dos.USOCOMNPara seleccionar una celdaEjemplo:Si se quiere seleccionar la celda C2, se tiene dos opciones.Range(C2).select o Cells(2,3).select*cells(i,j) , donde i=fila i ; j=columna j.Para dar valor a una celdaEjemplo:-Si se desea darle valor a la celda C2 =620, se tiene dos opcionesRange(C2).value=620 o Cells(2,3).value=620PARTICULARIDADESObjeto Range Permite seleccionar mas de una celda.Ejemplo:range(A1:B5).select*El objeto cells , no permite seleccionar mas de una celda.Objeto Cells Es compatible con seleccin de celdas bajo un patrn de formula. La ventaja del uso del objeto cells, es permitir vincular funciones numricas al uso de las celdas y/o a su seleccin.Ejemplo:Se desea conocer la suma que de la combinacin de una fila y columna, entonces se establece el siguiente programa:Sub celdasuma()For i = 1 To 10 For j = 1 To 10Cells(i, j).Value = i + jNext iNext jEnd SubDe esta forma se conocer lo propuesto en el ejemplo, asimismo los rangos podrn ampliarse de acuerdo a lo deseado.Elaborado por: Ana Ibez.

Compacin entre Range y Cells19/11/2012 by Fernando Santos | 0 commentsCompacin entre Range y CellsExiste un par de maneras para acceder las celdas de nuestras hojas utilizando VBA. Podemos utilizar el objeto Range y tambin podemos utilizar el objeto Cells.El objeto Cells tiene como primer argumento el nmero de fila y como segundo argumento el nmero de columna, el objetono nos permite seleccionar un rango porque solamente podemos especificar una celda a la vez.Cells(5, 2).SelectPara seleccionar un rango de celdas lo ms conveniente es utilizar el objeto Range de la siguiente manera:Range(A1:D5).SelectEstablecer valor a las celdas con los 2 objetos sealados, ejemplo:Range(B5).Value = 100Cells(5, 2).Value = 200Ventaja del objeto cellEl objeto Cells ofrece una ventaja que debemos considerar cuando necesitamos hacer un recorrido programtico por varias celdas ya que ser muy sencillo especificar las filas y columnas utilizando una variable numrica.EjemploSub AZUL()For i = 4 To 40For j = 2 To 10Cells(i, j).Value = i * jNext jNext iEnd SubElaborado por: Frank Alvarez Espinoza

Ejemplo de adicin y eliminacin de elementos de un Combobox21/04/2012 by Fernando Santos | 3 CommentsEl control del ComboBox se usa paraaadirelementos al cuadro decombinaciones y para que el usuario pueda elegir entre ellas. Dependiendo del valor (si est activo o no) se realiza una accin u otra.Ejemplo: Un ejemplo que invulucre laadicin y eliminacin de elementosseria en una situacion en la que un cine tiene que poner en su carteleralas peliculas de la semana. Los titulos de las peliculas van cambiando cada semana por ello creamos el siguiente procedimiento en un formulario:Private Sub UserForm_Activate()ult = Cells(Rows.Count, 1).End(xlUp).RowFor i = 1 To ultComboBox1.AddItem (Cells(i, 1))NextEnd SubPrivate Sub CommandButton1_Click()TextBox1.Text = ComboBox1.ValueEnd SubEste codigo permite que cuando se agregan o se quitan peliculas enla hoja excel, inmediatamente se aade o se elimina del cuadro de combinaciones. Como se muestra:ANTES:

DESPUES: (Se ha eliminado una pelicula y se ha puesto otra)

Elaborado por: Juan Carlos Castillo

Creacin de grficos con macros (parte 1)27/09/2011 by Fernando Santos | 4 CommentsCrear grficos puede resultar una tarea algo sencilla, cuando se requiere crear los grficos de forma repetida, ya no resulta tan entretenido que digamos, y se comienza a requerir que esto se pueda realizar de forma automtica, y esta necesidad se hace an mas grave si necesitamos volver a crear este mismo grfico con cada nuevo archivo que nos alcancen, o con un nmero importante de datos pues bien este cometario servir para aprender ha realizar los grficos de forma automtica (solo es un primer paso).Primero asumamos que tenemos los datos listos para ser graficados.

Luego en nuestro mdulo coloquemos el siguiente programa, notemos que en este programa estamos definiendo (por ahora) que se van a borrar los grficos previos (si los hubiera), la ubicacin del grfico que vamos a crear, y el rango de datos a emplear, tengamos presente que para indicar el rango de datos podemos reemplazar el uso de range por cells:.Chart.SetSourceData Source:=Sheets(Hoja1).Range(A1:A6).Chart.SetSourceData Source:=Cells(1, 1).Resize(6, 1)

Luego de ejecutado el programa se muestra el resultado tal como se ve a continuacin.

Creacin de grficos con macros (parte 1)27/09/2011 by Fernando Santos | 4 CommentsCrear grficos puede resultar una tarea algo sencilla, cuando se requiere crear los grficos de forma repetida, ya no resulta tan entretenido que digamos, y se comienza a requerir que esto se pueda realizar de forma automtica, y esta necesidad se hace an mas grave si necesitamos volver a crear este mismo grfico con cada nuevo archivo que nos alcancen, o con un nmero importante de datos pues bien este cometario servir para aprender ha realizar los grficos de forma automtica (solo es un primer paso).Primero asumamos que tenemos los datos listos para ser graficados.

Luego en nuestro mdulo coloquemos el siguiente programa, notemos que en este programa estamos definiendo (por ahora) que se van a borrar los grficos previos (si los hubiera), la ubicacin del grfico que vamos a crear, y el rango de datos a emplear, tengamos presente que para indicar el rango de datos podemos reemplazar el uso de range por cells:.Chart.SetSourceData Source:=Sheets(Hoja1).Range(A1:A6).Chart.SetSourceData Source:=Cells(1, 1).Resize(6, 1)

Luego de ejecutado el programa se muestra el resultado tal como se ve a continuacin.

5 Funciones en VBA imprescindibles15/12/2014 by Lesslie | 5 CommentsA continuacin vamos a describir 5 funciones que nos van a hacer de gran utilidad programando con VBA1.- FUNCIN PARA FECHAS Y NMEROS FORMAT

Esta funcin tomara una expresin ya sea en fecha o valor numrico y lo devolver como una cadena con formato, es muy til.Sintaxis: FORMAT (Expression, format)Expression: es el valor ya sea en nmero o fecha para dar formatoFormat: es el formato que se desea aplicar a la expresinPara nmeroGENERAL NUMBER: muestra un nmero sin separador de miles y con todos los decimales (444309943.34779)CURRENCY: muestra y redondea a dos dgitos a la derecha de decimal. (444309943.35)STANDARD: muestra los separadores de miles, y redondea a dos dgitos a la derecha de decimal. (444,309,943.35)PERCENT muestra un valor en trminos porcentuales (multiplicado por 100) y muestra 2 dgitos a la derecha del decimal. (44430994334.78%)SCIENTIFIC muestra el numero en notacin cientfica (4.44E+08)

Para ver el ejemplo, hacer clic en el siguiente enlace.FUNCION FORMAT-NUMBERPara fechaLONG DATE: Permite obtener la fecha en formato escrito totalmente completo. (sbado, 27 de enero de 2001)MEDIUM DATE: Permite obtener la fecha en formato completo (27-ene-01)D : Permite obtener el nmero del da (27)SHORT DATE fecha en formato corto (27/01/2001)LONG TIME: permite obtener la hora actual en formato largo completo (17:04:23)SHORT TIME: hora en formato completo(17:04)

Para ver el ejemplo, hacer clic en el siguiente enlace.FUNCION FORMAT-DATE2.- FUNCIN PARA PRESENTAR MENSAJES MSGBOX

Esta funcin es importante porque nos ayudara a mostrar mensajes en un cuadro de dialogoSintaxis: MSGBOX(prompt,buttons,title,helpfile,context)Prompt(obligatoria): es el mensaje de cadena que se mostrara como mensaje en el cuadro de dialogo.Buttons (opcional): es la suma de los valores que especifican el nmero y tipo de botones para mostrar, el estilo de icono a utilizar, la identidad del botn predeterminado, y la modalidad del cuadro del mensaje.Title (opcional): es la expresin que se mostrara en la barra de ttulo del cuadro de dialogo.Helpfile (opcional): identifica el archivo de Ayuda d usar para proporcionar ayuda contextual para el cuadro de dialogo.Context (opcional): expresin numrica que es el nmero de contexto de Ayuda Asignado al tema de Ayuda apropiado por el autorEjemplo: Msgbox(prompt,buttons,title)

Para ver el ejemplo, hacer clic en el siguiente enlace.FUNCION MSGBOX3.- FUNCIN PARA CONDICIN FOR NEXTRealizara la repeticin de un conjunto de instrucciones un determinado numero de veces, hasta que cumpla la condicin que hayamos especificado.Sintaxis: FOR (inicio de la variable) TO (limite de la variable)(instrucciones que se repetirn)Next variableEjemploSi deseamos que se muestre una ventana de dialogo 10 veces y en cada una mostraremos el valor actual de la variable i que comenzara con 1 t terminara con 5.

Para ver el ejemplo, hacer clic en el siguiente enlace.FUNCION FOR NEXT4.- FUNCIN PARA NMEROS ROUND

Una de las principales funciones para nmeros es la Funcin Round, la cual se usa para poder redondear un nmero con decimales. Si el valor a redondear tiene parte decimal menor a 0.5 el valor obtenido ser igual a la parte entera del nmero ingresado, pero si el valor a redondear tiene parte decimal mayor o igual a 0.5 el valor obtenido ser igual al entero inmediato superior del numero ingresado.Sintaxis: ROUND(number, NumDigitsAfterDecimalAsLong)Number: la expresin numrica que deseamos redondear (Obligatorio)NumDigitsAfterDecimalAsLong: Cantidad de decimales a las que deseamos redondear (opcional)EJEMPLOSi tenemos la siguiente lista de notas y deseamos redondearla con macros, utilizaremos la funcin Round

Para ver el ejemplo, hacer clic en el siguiente enlace.FUNCION ROUND5.- FUNCIN PARA TEXTO LCASE-UCASEEstas funciones de cadena nos van ayudar a trabajar y a tratar cadenas de caracteres.Funcin LcASE y UcasEstas dos funciones se utilizan para convertir cadenas de texto a minscula y mayscula.En el caso de Lcase, cambia o convierte una cadena de texto a minscula.Ucase funciona de la misma manera solo que en vez de convertir la cadena a minscula, convierte todo el texto a mayscula.EJEMPLO

Para ver el ejemplo, hacer clic en el siguiente enlace.FUNCION LcasePor: Lesslie

Algunas formas de Copiar Hojas en VBA10/11/2012 by Fernando Santos | 2 CommentsCOPIAR HOJAS EN VBAEl objeto Workbook representa un libro de Excel y el objeto Worksheet representa una hoja de un libro de Excel. Asimismo, un libro de Excel puede tener ms de una hoja lo cual significa que un objeto Workbook puede contener ms de un objeto Worksheet.Podemos utilizar Microsoft Visual Basic para Aplicaciones de cdigo (VBA) para copiar o mover hojas dentro de un libro o entre libros.Esto es especialmente til si se desea mover o copiar el nmero de hojas o si queremos realizar varias copias de una hoja..1 Copiar en el mismo libro Para realizar una copia dentro del mismo libro de Excel se puede utilizar la siguiente instruccin:

Por lo tanto al ejecutar la macro se copiar la hoja llamada Tarea1 y la colocar justo despus de la hoja llamada Tarea2. El parmetro Afteres el encargado de indicar que la copia se colocar despus de la hoja Final. Si quisiramos colocar la hojainicial antes de la hojaFinal utilizaramos el parmetroBefore:Worksheets(Tarea1).Copy Before:=Worksheets(Tarea2) Si queremos colocar la copia de la hojainicial hasta el final de todas las hojas podemos hacer uso de la propiedad Sheets.Countque nos ayuda a saber el nmero total de hojas de un libro.Worksheets(Tarea1).Copy After:=Sheets(Sheets.Count) Tambin es posible utilizar la posicin de la Hoja dentro de la coleccin Worksheets. Por ejemplo, si la hoja llamada hojainicial es la segunda hoja dentro del libro, se puede colocar:Worksheets(2).Copy After:=Sheets(Sheets.Count)De esta manera se realizar siempre la copia de la segunda hoja del libro sin importar su nombre.2 Copiar a un libro diferente

Si deseamos hacer la copia de una hoja hacia un libro diferente se debe especificar tanto el libro origen como el libro destino. Por ejemplo, queremos copiar la primera hoja del Libro1 y colocarla en el Libro2 despus de la tercera hoja.Workbooks(Libro1).Worksheets(1).Copy After:=Workbooks(Libro2).Sheets(3)Es importante que ambos libros estn abiertos para que se pueda realizar la copia adecuadamente.**Realizado por Paola Vargas Vejarano**