Como hacer para insertar fila tabla celda tenga un valor predeterminado excel

Tengo este código de una macro:

Sub Graba_Pendientes()
'
' Graba_Pendientes Macro
'
'
    Sheets("Pendiente").Select
    Rows("15:15").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("C15:O15").Select
    With Selection.Interior
        .Pattern = xlNone
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    With Selection.Font
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
    End With
    Range("D15").Select
    Sheets("Movimientos").Select
    Range("C10").Select
    Selection.Copy
    Sheets("Pendiente").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C14").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("E15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C16").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("F15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C18").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("G15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C20").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("H15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C22").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("I15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C24").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("J15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C26").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("K15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C32").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("L15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C34").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Pendiente").Select
    Range("O15").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets("Movimientos").Select
    Range("C10").Select
End Sub

Lo que hace es copiar los datos de una hoja e insertarlos en una tabla, pues bien como podría hacer para que cuando me inserte una fila y los datos en las celdas M15  y P15 de la hoja "Pendiente" me ponga por defecto "PENDIENTE".

1 respuesta

Respuesta
1

Te agregué la instrucción para colocar ese texto en esas 2 celdas:

Sub Graba_Pendientes()
'
' Graba_Pendientes Macro
'
'
    Sheets("Pendiente").Select
    Rows("15:15").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("C15:O15").Select
    With Selection.Interior
        .Pattern = xlNone
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    With Selection.Font
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
    End With
    'hasta aquí se ha insertado 1 fila y se está en hoja Pendiente
    'se coloca texto en M y P
    Range("M15,P15") = "PENDIENTE"
'sigue tu código

Ahora, el resto de tu código necesita mucha depuración. No es necesario seleccionar en cada paso. Te dejo las instrucciones para los primeros pases a continuación de lo anterior:

    With Sheets("Movimientos")
        .Range("C10").Copy
        Sheets("Pendiente").[D15].PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
        .Range("C14").Copy
        Sheets("Pendiente").[E15].PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
        .Range("C16").Copy
        Sheets("Pendiente").[F15].PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    'el resto de las celdas
    End With

Te invito a mirar el video 11 de mi canal donde se comentan otros modos de pulir códigos.

Sdos.

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas