Actualizar indices con macro en excel

Necesitaría lo siguiente y por lo cual apelo a tu mano y voluntad maestras de siempre:

  1. Cada vez que aplico el botón INICIAR de la hoja Menú, aparece un Form
  2. En él, aplicando el botón ANALISIS DE CARGAS, te lleva a la hoja “Análisis Entregas”
  3. En ella y cada vez que se abre esta hoja en particular, quisiera se copien las celdas Q4 y Q5 en la hoja HISTORICO
  4. Ya en la Hoja HISTORICO, y para el año 2016, los datos trasladados deberán pegarse con el siguiente criterio:
  5. Día 1 (06/01/2016) pegar en celdas B4 – B5
  6. Día 2 (07/01/2016) pegar en celdas C4 – C5
  7. Día 2 (07/01/2016) è pisar celdas C4 – C5 è significa que se abrió la planilla en la hoja “Análisis Entregas” otra vez el mismo día por lo que no debe generarse una nueva posición sino pisar la que ya existe
  8. Día 3 (08/01/2016) pegar en celdas D4 – D5
  9. , etc.

El modulo 1 solo comanda la captura y completamiento de la hoja “Análisis Entregas” por lo que, de agregar algún código, debería ser aquí o bien en la propia hoja

Te pasare por mail privado el archivo para que puedas analizarlo en cuanto puedas.

1 Respuesta

Respuesta
1

H o l a:

Te anexo la macro para poner en los eventos de la hoja "Análisis Entregas"

Private Sub Worksheet_Activate()
'Por.Dante Amor
    Set h1 = ActiveSheet
    Set h2 = Sheets("HISTORICO")
    fec = Date
    Set b = h2.Columns("A").Find(Year(Date), lookat:=xlPart)
    If Not b Is Nothing Then
        f = b.Row
        Set b = h2.Rows(f).Find(fec, lookat:=xlWhole)
        If Not b Is Nothing Then
            c = b.Column
            If h2.Cells(f + 1, c) = "" Then
                h2.Cells(f + 1, c) = h1.[Q4]
                h2.Cells(f + 2, c) = h1.[Q5]
            End If
        Else
            uc = h2.Cells(f, Columns.Count).End(xlToLeft).Column + 1
            h2.Cells(f, uc) = fec
            h2.Cells(f + 1, uc) = h1.[Q4]
            h2.Cells(f + 2, uc) = h1.[Q5]
        End If
    Else
        u = h2.Range("A" & Rows.Count).End(xlUp).Row + 2
        h2.Cells(u, "A") = "AÑO " & Year(Date)
        h2.Cells(u + 1, "A") = "Ficticios"
        h2.Cells(u + 2, "A") = "Programados"
        h2.Cells(u, "B") = fec
        h2.Cells(u + 1, "B") = h1.[Q4]
        h2.Cells(u + 2, "B") = h1.[Q5]
    End If
End Sub

sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas