Ejemplos+de+Macros+en+Excel
-
Upload
freddy-gonzalez -
Category
Documents
-
view
330 -
download
0
Transcript of Ejemplos+de+Macros+en+Excel
EJEMPLOS DE MACROS EN EXCEL
Formato a las celdas del rango seleccionado
(negrita, cursiva, subrayado, color, alineación)Sub formato()'dando formato a las celdas del rango seleccionadoRange("A1:D10").SelectWith SelectionFont.Bold = True'formato negritaFont.Italic = True'formato cursivaFont.Underline = xlUnderlineStyleSingle'subrayado simpleFont.Color = RGB(255, 0, 0)'color de fuente (para estos valores será rojo)HorizontalAlignment = xlCenter'alineación central (Right=derecha, Left=izquierda)End WithEnd SubLa siguiente macro explica como proteger todo (podemos cambiar True por False encaso de no querer aplicarla protección a algún elemento en particular):Sub ProtegerTodo()With ActiveSheet.Protect DrawingObjects:=True' Protegemos objetos.Protect Contents:=True' Protegemos contenidos.Protect Scenarios:=True' Protegemos escenarios.Protect AllowFormattingCells:=True' Protegemos formato de celdas.Protect AllowFormattingColumns:=True' Protegemos formato de columnas.Protect AllowFormattingRows:=True' Protegemos formato de filas.Protect AllowInsertingColumns:=True' Protegemos la posibilidad que se inserten columnas.Protect AllowInsertingRows:=True' Protegemos la posibilidad que se inserten filas.Protect AllowInsertingHyperlinks:=True' Protegemos la posibilidad que se inserten hipervícnulos.Protect AllowDeletingColumns:=True' Protegemos la posibilidad que se borren columnas.Protect AllowDeletingRows:=True' Protegemos la posibilidad que se borren filas.Protect AllowSorting:=True
' Protegemos la posibilidad que se utilice la opción de Ordenar.Protect AllowFiltering:=True' Protegemos la posibilidad que se utilice la opción de Filtrar.Protect AllowUsingPivotTables:=True' Protegemos la posibilidad que se utilicen Tablas Dinámicas.Protect Password:="WW"Asignamos la clave de protección "WW"End WithMACROS CON CICLOSEL CICLO PARAFor‘ ESTE EJEMPLO ES PARA PROBAR EL CICLONUMERO 1Sub ciclo()For i = 1 To 10MsgBox (i)Next iEnd SubSub llenado()Dim Fila As IntegerDim i As IntegerFila = 1For i = 2 To 10 Step 2ActiveSheet.Cells(Fila, 1).Value = iFila = Fila + 1Next iEnd SubEjemplo sumaEntrar 10 valores utilizando la función InputBox, sumarlos y guardar el resultado en lacasilla A1 de lahoja activa.Sub Sumar()Dim i As IntegerDim Total As IntegerDim Valor As IntegerFor i=1 To 10 Step 2Valor= Val(InputBox("Entrar un valor","Entrada"))Total = Total + ValorNext iActiveCell.Range("A1").Value = TotalEnd Sub
' Macro para tabla de multiplicar
' Macro grabada el 04/10/2009 por JULIE' Tabla del N
Sub MacroMultiplica()Dim nTabla As IntegernTabla = Application.Cells(1, 2)For a = 1 To 10Application.Cells(a + 1, 1) = nTablaApplication.Cells(a + 1, 2) = "X"Application.Cells(a + 1, 3) = aApplication.Cells(a + 1, 4) = "="Application.Cells(a + 1, 5) = a * nTablaNextEnd Sub
Esta macro se puede correr en la misma hoja de la tabla de multiplicarSolo aplicándola a otro boton borrar
Sub BORRAR()MsgBox "LOS DATOS SE BORRARAN" & vbCrLf & "Licda. Julie Eliza",vbExclamation, "Aviso"' MBORRAR MacroRange("A2:E12").SelectSelection.ClearContentsRange("b1").SelectSelection.ClearContentsEnd Sub
Sub Media()Dim Nota As IntegerDim Media As IntegerDim Fila As IntegerMedia = 0For Fila = 1 To 5Nota = Val(InputBox("Entrar la " & Fila & " Nota : ", "Entrar Nota"))ActiveSheet.Cells(Fila, 1) = NotaMedia = Media + NotaNext FilaMedia = Media / 5ActiveSheet.Cells(6, 1).Value = MediaEnd Sub
TAREA DE COMPUTACION PUNTEO # 25 PUNTOSNombre: clave :
Realizar el pseudocodigo en Word
1. Calcular el promedio de un alumno que tiene 7Calificaciones en la materia de Algoritmos2. Calcular el promedio de 10 alumnos los cuales tienen 5Calificaciones cada uno en la materia de Algoritmos.3. Leer 10 números y obtener su cuadrado y cubo.4. Leer 10 números e imprimir solamente los númerosPositivos5. Suponga que 15 calificaciones de un alumno ordenarlasAscendentemente.
Ejemplos de Pseudocódigo
Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un
rectángulo. Se debe introducir la base y la altura para poder realizar el cálculo..
Programa; áreaEntorno: BASE, ALTURA, AREA son número enterosAlgoritmo: escribir “Introduzca la base y la altura” leer BASE, ALTURA calcular AREA = BASE * ALTURA escribir “El área del rectángulo es “AREAFinprograma
Ejemplo: Realizar el pseudocódigo que permita al usuario introducir por teclado dos notas,
calculando la suma y el producto de las notas.Programa: SumaProductoEntorno: NOTA1,NOTA2,SUMA,PRODUCTO son números enterosAlgoritmo:
escribir “Introduzca las notas”leer NOTA1,NOTA2calcular SUMA = NOTA1 + NOTA2calcular PRODUCTO = NOTA1 * NOTA2escribir “La suma de las dos notas es:” SUMAescribir “El producto de las dos notas es :”PRODUCTO
Finprograma
Ejemplo: Realizar el pseudocódigo de un programa que permita saber si un número es
mayor, menor o igual a cero. Programa: ComparaNúmeros Entorno: NUMERO es un número entero
Algoritmo:Escribir “Introduzca un número “leer NUMEROSI NUMERO>0 ENTONCES escribir “El número introducido es positivo”SI NO SI NUMERO<0 ENTONCES escribir “El número introducido es negativo” SI NO escribir “El número es cero” FINSIFINSI
Finprograma
Supongamos un algoritmo que lea las coordenadas de tres puntos y los mueva tres puntos en la coordenada x y escriba el resultado en algún dispositivo de salida: ALGORITMO lee_tres_verticesENTRADA: las coordenadas (x,y) de tres puntosSALIDA: las coordenadas (x,y) de los tres puntos movidos 3 puntos hacia la derecha.VARIABLES: i:entera
x,y: realINICIO
PARA i=1 HASTA 3 CON INCREMENTO +1ESCRIBE "Abscisa del punto número ", iLEER xESCRIBE "Ordenada del punto número ", iLEER YESCRIBE "El punto es (" x+3","y")"
FIN_PARAFIN El programa equivalente a este algoritmo se muestra a continuación. Como podemos apreciar en un programa en Pascal es importantísimo no olvidar detalles de sintaxis. Por ejemplo cada sentencia termina en punto y coma. De cualquier forma es inmediato apreciar los simples cambios existentes. program lee_tres_vertices;var x,y:real;i:integer;beginfor i:=1 to 3 dobeginwrite ('Abscisa del punto número ',i); readln(x);
write ('Ordenada del punto número ',i); readln(y);writeln (' El punto es (',x+3,',',y,')');end;
end;
Problema: calcular y mostrar la suma de los diez primeros números entre 1 y 1000 que sean divisibles por uno dado. programa suma_divisibles
variables natural : divisor, suma, contador, número inicio programadivisor leer ‘Introduce el divisor: ’suma 0contador 0para número desde 1 hasta 1000 hacer
si divisor divide a número entoncessuma suma + númerocontador contador + 1
fin si si contador = 10 entonces
interrumpir fin sifin para escribir ‘La suma es’, suma fin programa