Saltar al contenido

Función msgbox


aballens

Recommended Posts

publicado

 Buen día,

Me puede ayudar con la  funcion msgbox, que me arroje el mensaje "Información Almacenada"; estoy intentando incluirla en un codigo para guardar informacion a partir de un formulario, pero no se en que parte del codigo ubicarla, el codigo que diseñe es el siguiente:

Sub GUARDAR()
'
' GUARDAR Macro
'

'
    Application.ScreenUpdating = False
    Range("W6").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("A2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A2000").Select
    Sheets("Formulario").Select
    Range("AE6:AF6").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("B2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B2000").Select
    Sheets("Formulario").Select
    Range("D6:S6").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("C2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("C2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("B12:F12").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("D2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("D2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("H12:Q12").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("E2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("E2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("S12:AH12").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("F2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("F2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("E15:J15").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("G2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("G2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("O15:AE15").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("H2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("H2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("A21:F21").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("I2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("I2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("G21:L21").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("J2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("J2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("M21:R21").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("K2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("K2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("S21:X21").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("L2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("L2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("Y21:AB21").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("M2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("M2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("AC21:AI21").Select
    Selection.Copy
    Sheets("Consolidado").Select
    ActiveWindow.SmallScroll ToRight:=12
    Range("N2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("N2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("A25:E25").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("O2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("O2000").Select
    Sheets("Formulario").Select
    Range("F25:K25").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("P2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("P2000").Select
    Sheets("Formulario").Select
    Range("L25:Q25").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("Q2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("Q2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("A25:E25").Select
    Selection.ClearContents
    Range("S25:W25").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("R2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("R2000").Select
    Sheets("Formulario").Select
    Range("X25:AC25").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("S2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("S2000").Select
    Sheets("Formulario").Select
    Range("AD25:AI25").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("T2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("T2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("S25:W25").Select
    Selection.ClearContents
    ActiveWindow.SmallScroll Down:=6
    Range("A28:Q28").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("U2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("U2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("R28:V28").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("V2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("V2000").Select
    Sheets("Formulario").Select
    Range("W28:AB28").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("W2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("W2000").Select
    Sheets("Formulario").Select
    Range("AC28:AI28").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("X2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("X2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("R28:V28").Select
    Selection.ClearContents
    Range("A31:F31").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("Y2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("Y2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("G31:N31").Select
    Selection.Copy
    Sheets("Consolidado").Select
    ActiveWindow.SmallScroll ToRight:=5
    Range("Z2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("Z2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("X31:AI31").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("AA2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("AB2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("O31:W31").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("AB2000").Select
    Sheets("Formulario").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    ActiveWindow.SmallScroll Down:=3
    Range("G34:N34").Select
    Selection.Copy
    Sheets("Consolidado").Select
    Range("AC2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range(Selection, Cells(1)).Select
    Range("A1:AJ2000").Select
    Range("AC2000").Activate
    Application.CutCopyMode = False
    ActiveWorkbook.Worksheets("Consolidado").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Consolidado").Sort.SortFields.Add Key:=Range( _
        "AC2:AC2000"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Consolidado").Sort
        .SetRange Range("A1:AJ2000")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A1").Select
    Sheets("Formulario").Select
    ActiveWindow.SmallScroll Down:=-12
    Range("D6:S6").Select
    Application.ScreenUpdating = True
End Sub


 

publicado

.

Inmediatamente antes de End Sub:

Msgbox "Información almacenada", vbInformation,"Resultado del proceso"

Supongo que la macro las has construido con la grabadora de macros.

Usar la grabadora de macros es una gran idea para aprender a realizar macros, no obstante, y porqué no puede ser de otra manera, genera una gran cantidad de código innecesario.

Te dejo un ejemplo de una conversión de código generado por la grabadora de macros a un código mas eficiente:

Sub Esto()
    Sheets("Formulario").Select
    Range("AE6:AF6").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Consolidado").Select
    Range("B2000").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B2000").Select

End Sub

Sub SePuedeSustituirPorEsto()
    Sheets("Formulario").Range("AE6:AF6").Copy
    Sheets("Consolidado").Range("B2000").PasteSpecial xlPasteValues
End Sub

 

publicado

aparte del buen consejo de Antoni, si sigues queriendo el msgbox, pues debería ir al final del proceso ¿no?

With ActiveWorkbook.Worksheets("Consolidado").Sort
        .SetRange Range("A1:AJ2000")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
MsgBox "Proceso completado"
end sub

Todo lo que hay después del End With sobra

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.