0 calificaciones0% encontró este documento útil (0 votos)
53 vistas
Macros
Este documento proporciona instrucciones para crear macros, módulos y formularios en VBA para automatizar tareas en Excel como sumar filas, cambiar colores condicionalmente, insertar registros con botones y bucles para iterar sobre celdas. Explica cómo grabar macros, ejecutarlas con botones de formulario, y usar funciones como IF, DO y SELECT CASE para aplicar lógica condicional.
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0 calificaciones0% encontró este documento útil (0 votos)
53 vistas
Macros
Este documento proporciona instrucciones para crear macros, módulos y formularios en VBA para automatizar tareas en Excel como sumar filas, cambiar colores condicionalmente, insertar registros con botones y bucles para iterar sobre celdas. Explica cómo grabar macros, ejecutarlas con botones de formulario, y usar funciones como IF, DO y SELECT CASE para aplicar lógica condicional.
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3
MACROS
archivo->opciones ->personalizar sinta de opciaones ->programador
porgramdor->codigo->grabar macro->nombre de lamacro sin espacios->ctrl y se coloca una letra->se inicia y se detiene _____________________________________________________________________ programador->controles->insertar->controles de formularios->la 1r boton->se selcciona la macro creada anteriormente-> se ejecuta en el archivo borrador ____________________________________________________________________ alf + f11 ver explorador de proyecto modulo->insertar->modulo->procedimineto->vendedor1 Public Sub Vendedor() Dim Vendedor As String -> se da la variable alfanumerica Vendedor = "Miguel" -> el resultado de la variable ActiveCell.Value = Vendedor -> active el valor de la celda End Sub f8->verifica paso a paso del codigo _______________________________________________________________________ ESTE CODIGO ES PARA SUMAR TODA UNA FILA Y EL TOTAL EN G2 Public Sub suma() Range("g2").Value = Range("c2").Value + Range("d2").Value + Range("e2").Value + Range("f2").Value End Sub ______________________________________________________________________ codigo para cambiar colores se crea un procedimiento funcioif condiciones: ELSE-> si no tal cosa....
Public Sub FuncionIF()
If Range("g2") > "5000" Then Range("g2").Interior.Color = vbBlue Else: Range("g4").Interior.Color = vbBlack End If If Range("g2") < "5000" Then Range("g3").Interior.Color = vbRed End If End Sub _______________________________________________________________________ codigo para mensajes de advertencia If Range("g2") > "50000" Then Else: MsgBox "debes incluir un valor superior a 50000", vbOKCancel + vbInformation , vdcritical End If _______________________________________________________________________ funcion DO y while DO-> realiza un ciclo de condiciones hasta que se cumpla la condicion byte->0-255 integer > 255 long -> 2.000 millones fila = fila + 1-> hasta cuando hay datos Do while Cells(fila, "a") <> ""
Public Sub FUNCIONDO()
Dim fila As Byte fila = 3 Do Until Cells(fila, "a") = "" Select Case Cells(fila, "d") Case Is < 60000: Cells(fila, "E") = "No comision" Case Is < 70000: Cells(fila, "E") = "comision 60%" Case Is < 80000: Cells(fila, "E") = "comision 70%" Case Else: Cells(fila, "e") = "comision total" End Select fila = fila + 1 Loop End Sub ______________________________________________________________________ FORMULARIOS: insertar-> userform -> ver->ventana de propiedades name-> empleados caption-> empleados o nombre empleados o proceso autosice-para ajustar el boton al nombre click derecho ajustar derecha para alinear inseratar cuadro de texto y botones de comando dandole doble click accede a programarlo: Private Sub CommandButton1_Click() ActiveSheet.Cells(2, 1).Select Selection.EntireRow.Insert ActiveSheet.Cells(2, 1) = TextBox1 ActiveSheet.Cells(2, 2) = TextBox2 TextBox1 = "" TextBox2 = "" TextBox1.SetFocus End Sub
para editar el segundo boton finalizar doble clic en el segundo boton
->en la mitad de private y sub-> end -> insertar modulo -> insertar procedimiento-> se le da un nombre Public Sub Formulario() Load empleados Empleados.Show End Sub se selcciona una imagen y se asigna la macro ___________________________________________________________________________________ ___________________ editar una hoja de calculo sin el modulo 1. VBA-> hoja1 pasoportemasivos dar doble click -> despleagr genelar->worksheet-> change -se elimina lo de abajo se digita el siguinete codigo:
and: para dos condiciones y se deben cumplir
or : una de las dos se debe cumplir ___________________________________________________________________________________ _____________________ esta parte del codigo obliga a que se digite bien la fecha: ___________________________________________________________________________________ _____________________ Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 5 And Target.Row > 1 Then If IsDate(Target) = True Then Else: MsgBox "debes incluir un fecha para poder continuar", vbInformation ___________________________________________________________________________________ _________________ evita el bucle infinito: ___________________________________________________________________________________ ____________ application.enableevents = False target.value = "" application.enableevents = tru target.select end if ___________________________________________________________________________________ _________________ esta parte del codigo evita el bucle infinito y obliga a que se digite valores numericos: ___________________________________________________________________________________ _________________ ElseIf Target.Column = 6 And Target.Row > 1 Then If IsNumeric(Target) = True And Target > 0 Then Else: MsgBox "debes incluir un numero y que sea mayor que cero parapoder hacer la aopercion", vbCritical Application.EnableEvents = False Target.Value = "" Application.EnableEvents = True Target.Select End If End If ___________________________________________________________________________________ _________________ if target >=100 then target.offset (0, 1).value = range("b4") target.offset (0, 2).value = range("b4") * target elseif target >=11 then target.offset (0, 1).value = range("b3") target.offset (0, 2).value = range("b3") * target else target.offset (0, 1).value = Range("b2") target.offset (0, 2).value = range("b2")*target end if
Else msjbox"debes incluir un numero y que sea mayor que cero parapoder hacer la aopercion", vbcritical application.enableevents = False target.value = "" application.enableevents = tru target.select end if