Está en la página 1de 5

CODIFICACION Y FORMATO DE MACRO PARA CONTROL DE VALES

1. El siguiente diseo de macros en MICROSOFT EXCEL comprende un formato de vales de salida de


almacn usado en MARSA, tiene una base de datos que incluye cdigo de los usuarios, cdigo de
cuenta de cada seccin o rea que solicita implementos as como los nombres de los que autorizan la
salida de materiales de seguridad (cdigo de firma); una vez llenado el formato (grafico 1) se acciona el
botn de comando (ingresar) y estos datos se almacenan en otra base de datos que contiene la salida
de material por seccin y/o solicitante de material de seguridad.

2. Codificacin del botn de comando:


Private Sub CommandButton1_Click()
Worksheets("base").Activate
ActiveSheet.Range("a2").Activate
Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Activate
Loop
With ActiveCell

ActiveCell.Value = Worksheets("formato").Range("codigo1").Value
ActiveCell.Offset(1, 0) = Worksheets("formato").Range("codigo2").Value
ActiveCell.Offset(2, 0) = Worksheets("formato").Range("codigo3").Value
ActiveCell.Offset(3, 0) = Worksheets("formato").Range("codigo4").Value
ActiveCell.Offset(4, 0) = Worksheets("formato").Range("codigo5").Value
ActiveCell.Offset(5, 0) = Worksheets("formato").Range("codigo6").Value
ActiveCell.Offset(6, 0) = Worksheets("formato").Range("codigo7").Value
ActiveCell.Offset(7, 0) = Worksheets("formato").Range("codigo8").Value
ActiveCell.Offset(8, 0) = Worksheets("formato").Range("codigo9").Value
ActiveCell.Offset(9, 0) = Worksheets("formato").Range("codigo10").Value

ActiveCell.Offset(0, 1) = Worksheets("formato").Range("material1").Value
ActiveCell.Offset(1, 1) = Worksheets("formato").Range("material2").Value
ActiveCell.Offset(2, 1) = Worksheets("formato").Range("material3").Value
ActiveCell.Offset(3, 1) = Worksheets("formato").Range("material4").Value
ActiveCell.Offset(4, 1) = Worksheets("formato").Range("material5").Value
ActiveCell.Offset(5, 1) = Worksheets("formato").Range("material6").Value
ActiveCell.Offset(6, 1) = Worksheets("formato").Range("material7").Value
ActiveCell.Offset(7, 1) = Worksheets("formato").Range("material8").Value
ActiveCell.Offset(8, 1) = Worksheets("formato").Range("material9").Value
ActiveCell.Offset(9, 1) = Worksheets("formato").Range("material10").Value

ActiveCell.Offset(0, 2) = Worksheets("formato").Range("cantidad1").Value
ActiveCell.Offset(1, 2) = Worksheets("formato").Range("cantidad2").Value
ActiveCell.Offset(2, 2) = Worksheets("formato").Range("cantidad3").Value
ActiveCell.Offset(3, 2) = Worksheets("formato").Range("cantidad4").Value
ActiveCell.Offset(4, 2) = Worksheets("formato").Range("cantidad5").Value
ActiveCell.Offset(5, 2) = Worksheets("formato").Range("cantidad6").Value
ActiveCell.Offset(6, 2) = Worksheets("formato").Range("cantidad7").Value
ActiveCell.Offset(7, 2) = Worksheets("formato").Range("cantidad8").Value
ActiveCell.Offset(8, 2) = Worksheets("formato").Range("cantidad9").Value
ActiveCell.Offset(9, 2) = Worksheets("formato").Range("cantidad10").Value

ActiveCell.Offset(0, 3) = Worksheets("formato").Range("area").Value
ActiveCell.Offset(0, 4) = Worksheets("formato").Range("almacen").Value
ActiveCell.Offset(0, 5) = Worksheets("formato").Range("cuenta").Value
ActiveCell.Offset(0, 6) = Worksheets("formato").Range("analisis").Value
ActiveCell.Offset(0, 7) = Worksheets("formato").Range("empresa").Value
ActiveCell.Offset(0, 8) = Worksheets("formato").Range("vale").Value
ActiveCell.Offset(0, 9) = Worksheets("formato").Range("firma").Value
ActiveCell.Offset(0, 10) = Worksheets("formato").Range("nombre").Value

Worksheets("formato").Range("vale").Value = ""
Worksheets("formato").Range("Codigo1").Value = ""
Worksheets("formato").Range("Codigo2").Value = ""
Worksheets("formato").Range("Codigo3").Value = ""
Worksheets("formato").Range("Codigo4").Value = ""
Worksheets("formato").Range("Codigo5").Value = ""
Worksheets("formato").Range("Codigo6").Value = ""
Worksheets("formato").Range("Codigo7").Value = ""
Worksheets("formato").Range("Codigo8").Value = ""
Worksheets("formato").Range("Codigo9").Value = ""
Worksheets("formato").Range("codigo10").Value = ""

Worksheets("formato").Range("cantidad1").Value = ""
Worksheets("formato").Range("cantidad2").Value = ""
Worksheets("formato").Range("Cantidad3").Value = ""
Worksheets("formato").Range("Cantidad4").Value = ""
Worksheets("formato").Range("Cantidad5").Value = ""
Worksheets("formato").Range("Cantidad6").Value = ""
Worksheets("formato").Range("Cantidad7").Value = ""
Worksheets("formato").Range("Cantidad8").Value = ""
Worksheets("formato").Range("Cantidad9").Value = ""
Worksheets("formato").Range("cantidad10").Value = ""

Worksheets("formato").Range("area").Value = ""
Worksheets("formato").Range("aLmacen").Value = ""
Worksheets("formato").Range("movimiento").Value = ""
Worksheets("formato").Range("cuenta").Value = ""
Worksheets("formato").Range("aNalisis").Value = ""
Worksheets("formato").Range("vale").Value = ""
Worksheets("formato").Range("fecha").Value = ""
Worksheets("formato").Range("firma").Value = ""

End With
Worksheets("formato").Activate
Worksheets("formato").Range("area").Activate
If Not (ActiveWorkbook.Saved) Then
ActiveWorkbook.Save
End If

End Sub

CODIFICACION Y FORMATO DE MACRO PARA CONTROL PERSONAL EN ASISTENCIA A CAPACITACION


Y RECORD DE INFRACCIONES Y ACCIDENTES
1. Este formato esta diseado para el ingreso de datos (asistencia mensual a capacitaciones, record de
infracciones a los reglamentos (046, 033, y reglamento interno MARSA), record de accidentes etc.) La
bsqueda es realizada por el cdigo nico de personal, contiene una base de datos el la que incluye los
campos necesarios por el diseo, este se ejecuta una vez ingresado los 9 dgitos del cdigo del
personal, se hace las modificaciones correspondientes y se ejecuta el botn de comando (Guardar
datos) una vez accionado, toda esa informacin es almacenada en la hoja que contiene la base de
datos general de todas las empresas especializadas y de marsa.

2. CODIFICACION DEL BOTON DE COMANDO

Private Sub CommandButton2_Click()


WORKSHEETS("BASE").Activate
ActiveCell.Offset(0, 5) = WORKSHEETS("CONSULTA").Range("c11").Value
ActiveCell.Offset(0, 6) = WORKSHEETS("CONSULTA").Range("c12").Value
ActiveCell.Offset(0, 7) = WORKSHEETS("CONSULTA").Range("c13").Value
ActiveCell.Offset(0, 8) = WORKSHEETS("CONSULTA").Range("c14").Value
ActiveCell.Offset(0, 9) = WORKSHEETS("CONSULTA").Range("c15").Value
ActiveCell.Offset(0, 10) = WORKSHEETS("CONSULTA").Range("c16").Value
ActiveCell.Offset(0, 11) = WORKSHEETS("CONSULTA").Range("c17").Value
ActiveCell.Offset(0, 12) = WORKSHEETS("CONSULTA").Range("c18").Value
ActiveCell.Offset(0, 13) = WORKSHEETS("CONSULTA").Range("c19").Value
ActiveCell.Offset(0, 14) = WORKSHEETS("CONSULTA").Range("c20").Value
ActiveCell.Offset(0, 15) = WORKSHEETS("CONSULTA").Range("c21").Value
ActiveCell.Offset(0, 16) = WORKSHEETS("CONSULTA").Range("C22").Value
ActiveCell.Offset(0, 17) = WORKSHEETS("CONSULTA").Range("e11").Value
ActiveCell.Offset(0, 18) = WORKSHEETS("CONSULTA").Range("e12").Value
ActiveCell.Offset(0, 19) = WORKSHEETS("CONSULTA").Range("e13").Value
ActiveCell.Offset(0, 20) = WORKSHEETS("CONSULTA").Range("I11").Value
ActiveCell.Offset(0, 21) = WORKSHEETS("CONSULTA").Range("I12").Value
ActiveCell.Offset(0, 22) = WORKSHEETS("CONSULTA").Range("I13").Value
ActiveCell.Offset(0, 23) = WORKSHEETS("CONSULTA").Range("M11").Value
ActiveCell.Offset(0, 24) = WORKSHEETS("CONSULTA").Range("M12").Value
ActiveCell.Offset(0, 25) = WORKSHEETS("CONSULTA").Range("M13").Value
ActiveCell.Offset(0, 26) = WORKSHEETS("CONSULTA").Range("E15").Value
ActiveCell.Offset(0, 27) = WORKSHEETS("CONSULTA").Range("I15").Value
ActiveCell.Offset(0, 28) = WORKSHEETS("CONSULTA").Range("M15").Value
ActiveCell.Offset(0, 29) = WORKSHEETS("CONSULTA").Range("E16").Value
ActiveCell.Offset(0, 30) = WORKSHEETS("CONSULTA").Range("i16").Value
ActiveCell.Offset(0, 31) = WORKSHEETS("CONSULTA").Range("M16").Value
ActiveCell.Offset(0, 32) = WORKSHEETS("CONSULTA").Range("E17").Value
ActiveCell.Offset(0, 33) = WORKSHEETS("CONSULTA").Range("i17").Value
ActiveCell.Offset(0, 34) = WORKSHEETS("CONSULTA").Range("M17").Value
ActiveCell.Offset(0, 35) = WORKSHEETS("CONSULTA").Range("E18").Value
ActiveCell.Offset(0, 36) = WORKSHEETS("CONSULTA").Range("I18").Value
ActiveCell.Offset(0, 37) = WORKSHEETS("CONSULTA").Range("M18").Value
ActiveCell.Offset(0, 38) = WORKSHEETS("CONSULTA").Range("E20").Value
ActiveCell.Offset(0, 39) = WORKSHEETS("CONSULTA").Range("E21").Value
ActiveCell.Offset(0, 40) = WORKSHEETS("CONSULTA").Range("E22").Value
ActiveCell.Offset(0, 41) = WORKSHEETS("CONSULTA").Range("I20").Value
ActiveCell.Offset(0, 42) = WORKSHEETS("CONSULTA").Range("I21").Value
ActiveCell.Offset(0, 43) = WORKSHEETS("CONSULTA").Range("I22").Value
ActiveCell.Offset(0, 44) = WORKSHEETS("CONSULTA").Range("m20").Value
ActiveCell.Offset(0, 45) = WORKSHEETS("CONSULTA").Range("m21").Value
ActiveCell.Offset(0, 46) = WORKSHEETS("CONSULTA").Range("m22").Value
ActiveCell.Offset(0, 47) = WORKSHEETS("CONSULTA").Range("c27").Value
ActiveCell.Offset(0, 48) = WORKSHEETS("CONSULTA").Range("c28").Value
ActiveCell.Offset(0, 49) = WORKSHEETS("CONSULTA").Range("c29").Value
TextBox1.Text = ""
TextBox1.Activate
WORKSHEETS("CONSULTA").Activate
If Not (ActiveWorkbook.Saved) Then
ActiveWorkbook.Save
End If
End Sub

ESTE BLOQUE DE SENTENCIAS EJECUTA LA BUSQUEDA DEL CDIGO

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)


Dim CELDA As String
WORKSHEETS("CONSULTA").TextBox1.MaxLength = 9
If WORKSHEETS("CONSULTA").TextBox1.TextLength = 9 Then
WORKSHEETS("base").Activate
CELDA = BUSCAR("A2", 300)
If CELDA = "" Then
RES = MsgBox("CODIGO NO EXISTE O ERROR DE DIGITACION", vbOKOnly + vbExclamation, "ERROR")
If RES = vbOK Then
TextBox1.Activate
TextBox1.Text = ""
End If

Else
WORKSHEETS("CONSULTA").Range("B7").Value = ActiveCell.Offset(0, 1)
WORKSHEETS("CONSULTA").Range("M7").Value = ActiveCell.Offset(0, 2)
WORKSHEETS("CONSULTA").Range("G7").Value = ActiveCell.Offset(0, 4)
WORKSHEETS("CONSULTA").Range("K7").Value = ActiveCell.Offset(0, 3)
WORKSHEETS("CONSULTA").Range("C11").Value = ActiveCell.Offset(0, 5)
WORKSHEETS("CONSULTA").Range("C12").Value = ActiveCell.Offset(0, 6)
WORKSHEETS("CONSULTA").Range("C13").Value = ActiveCell.Offset(0, 7)
WORKSHEETS("CONSULTA").Range("C14").Value = ActiveCell.Offset(0, 8)
WORKSHEETS("CONSULTA").Range("C15").Value = ActiveCell.Offset(0, 9)
WORKSHEETS("CONSULTA").Range("C16").Value = ActiveCell.Offset(0, 10)
WORKSHEETS("CONSULTA").Range("C17").Value = ActiveCell.Offset(0, 11)
WORKSHEETS("CONSULTA").Range("C18").Value = ActiveCell.Offset(0, 12)
WORKSHEETS("CONSULTA").Range("C19").Value = ActiveCell.Offset(0, 13)
WORKSHEETS("CONSULTA").Range("C20").Value = ActiveCell.Offset(0, 14)
WORKSHEETS("CONSULTA").Range("C21").Value = ActiveCell.Offset(0, 15)
WORKSHEETS("CONSULTA").Range("C22").Value = ActiveCell.Offset(0, 16)
WORKSHEETS("CONSULTA").Range("E11").Value = ActiveCell.Offset(0, 17)
WORKSHEETS("CONSULTA").Range("E12").Value = ActiveCell.Offset(0, 18)
WORKSHEETS("CONSULTA").Range("E13").Value = ActiveCell.Offset(0, 19)
WORKSHEETS("CONSULTA").Range("i11").Value = ActiveCell.Offset(0, 20)
WORKSHEETS("CONSULTA").Range("i12").Value = ActiveCell.Offset(0, 21)
WORKSHEETS("CONSULTA").Range("i13").Value = ActiveCell.Offset(0, 22)
WORKSHEETS("CONSULTA").Range("M11").Value = ActiveCell.Offset(0, 23)
WORKSHEETS("CONSULTA").Range("M12").Value = ActiveCell.Offset(0, 24)
WORKSHEETS("CONSULTA").Range("M13").Value = ActiveCell.Offset(0, 25)

WORKSHEETS("CONSULTA").Range("E15").Value = ActiveCell.Offset(0, 26)


WORKSHEETS("CONSULTA").Range("I15").Value = ActiveCell.Offset(0, 27)
WORKSHEETS("CONSULTA").Range("M15").Value = ActiveCell.Offset(0, 28)
WORKSHEETS("CONSULTA").Range("E16").Value = ActiveCell.Offset(0, 29)
WORKSHEETS("CONSULTA").Range("I16").Value = ActiveCell.Offset(0, 30)
WORKSHEETS("CONSULTA").Range("M16").Value = ActiveCell.Offset(0, 31)
WORKSHEETS("CONSULTA").Range("E17").Value = ActiveCell.Offset(0, 32)
WORKSHEETS("CONSULTA").Range("I17").Value = ActiveCell.Offset(0, 33)
WORKSHEETS("CONSULTA").Range("M17").Value = ActiveCell.Offset(0, 34)
WORKSHEETS("CONSULTA").Range("E18").Value = ActiveCell.Offset(0, 35)
WORKSHEETS("CONSULTA").Range("I18").Value = ActiveCell.Offset(0, 36)
WORKSHEETS("CONSULTA").Range("M18").Value = ActiveCell.Offset(0, 37)
WORKSHEETS("CONSULTA").Range("E20").Value = ActiveCell.Offset(0, 38)
WORKSHEETS("CONSULTA").Range("E21").Value = ActiveCell.Offset(0, 39)
WORKSHEETS("CONSULTA").Range("E22").Value = ActiveCell.Offset(0, 40)
WORKSHEETS("CONSULTA").Range("I20").Value = ActiveCell.Offset(0, 41)
WORKSHEETS("CONSULTA").Range("I21").Value = ActiveCell.Offset(0, 42)
WORKSHEETS("CONSULTA").Range("I22").Value = ActiveCell.Offset(0, 43)
WORKSHEETS("CONSULTA").Range("M20").Value = ActiveCell.Offset(0, 44)
WORKSHEETS("CONSULTA").Range("M21").Value = ActiveCell.Offset(0, 45)
WORKSHEETS("CONSULTA").Range("M22").Value = ActiveCell.Offset(0, 46)
WORKSHEETS("CONSULTA").Range("C27").Value = ActiveCell.Offset(0, 47)
WORKSHEETS("CONSULTA").Range("C28").Value = ActiveCell.Offset(0, 48)
WORKSHEETS("CONSULTA").Range("C29").Value = ActiveCell.Offset(0, 49)
End If
End If
WORKSHEETS("CONSULTA").Activate
End Sub

Function BUSCAR(CELDAINICIAL As String, VALORBUSCADO As Integer) As String


ActiveSheet.Range("A2").Activate
Do While Not IsEmpty(ActiveCell) And ActiveCell.Value <> TextBox1.Text
ActiveCell.Offset(1, 0).Activate
Loop
If Not IsEmpty(ActiveCell) Then
BUSCAR = ActiveCell.Address
Else
WORKSHEETS("CONSULTA").Activate
End If
End Function

También podría gustarte