Macro Insertar fecha, Numero de mes Semana en celdas diferentes.

Para: Dante

Recurriendo nuevamente a tu gran ayuda, como puedo realizar que cuando uno ingrese numero o letra en determinada celda me ponga automáticamente la fecha el numero del mes y el numero de semana en la que uno se encuentra por ejemplo.

En el circulo rojo se ingresan los datos, al ingresar un dato en circulo azul columna "A" numero del mes en la "B" numero de semana y si no es mucho pedir de la columna "F" hasta la "P" se coloque la letra C.

1 respuesta

Respuesta
1

Pon la siguiente macro en los eventos de tu hoja.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("D:E")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        Cells(Target.Row, "A") = Month(Date)
        Cells(Target.Row, "B") = VBA.DatePart("ww", Date, vbMonday, vbFirstJan1)
        Cells(Target.Row, "C") = Date
        Range("F" & Target.Row & ":P" & Target.Row) = "C"
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. Del lado derecho copia la macro

Saludos. Dante Amor

Hola! Dante 

Gracias por la pronta respuesta, un detalle en este archivo tengo varias hojas con la macro que me diste tendría que determinar en que hoja exactamente es en la que tiene que realizar los cambios.

Gracias! Dante

El error era mio no lo puse en la hoja indicada esta perfecto la macro que me diste Muchísimas gracias. 

¿Quieres qué se ejecute en varias hojas?

¿O solamente en algunas?

¿O solamente en una?

Si es en una sola hoja, pon la macro en los eventos de esa hoja. Sigue las instrucciones y dale doble click a la hoja que necesitas.


Si es en varias hojas pon lo siguiente en los eventos de thisworkbook, cambia hoja1, hoja2 por las hojas que necesites, agrega más nombres de hojas entres comillas y separadas por una coma.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
'Por.Dante Amor
    Select Case Sh.Name
        Case "Hoja1", "Hoja2"
            If Not Intersect(Target, Range("D:E")) Is Nothing Then
                If Target.Count > 1 Then Exit Sub
                Cells(Target.Row, "A") = Month(Date)
                Cells(Target.Row, "B") = VBA.DatePart("ww", Date, vbMonday, vbFirstJan1)
                Cells(Target.Row, "C") = Date
                Range("F" & Target.Row & ":P" & Target.Row) = "C"
            End If
    End Select
End Sub

Instrucciones para poner la macro en los eventos ThisWorkbook

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a ThisWorkbook
  4. Del lado derecho copia la macro

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas