Copiar y pegar no funciona para actualizar una formula

Alguien me puede auxiliar con sus sabios consejos, lo que pasa es que tengo una hoja formulada, para solo pegar valores y se actualizan los datos pero en la columna H pego los datos como valores y no funciona, lo tengo que escribir si no no me actualiza la formula.

En 6 filas tengo en la H pegado como valores y después de esa probé hacerlo manual y si funciona mi formula en la columna D por que pasa esto? Que ayúdenme con la solución.

2 respuestas

Respuesta
3

Para pasar los números que tienes como texto a números, realiza lo siguiente:

- Escribe el número 1 en cualquier celda disponible, por ejemplo en la celda F1.

- Selecciona la celda F1,

- Presiona Control + C para copiar la celda F1

- Ahora selecciona los datos de la columna H, desde H2 hasta H y la última fila con datos

- Selecciona del menú Inicio, Pegar, Pegado especial, en Operación selecciona Multiplicar y presiona Aceptar.

Los textos que son números quedarán como números.

S a l u d o s . D a n t e   A m o r

Si es lo que necesitas.

Hola Dante gracias por tu tiempo, sin embargo aun así no se actualiza mi fórmula, la tengo que colocar de forma manual para que me actualice, de lo contrario me genera error. Hice lo que me indicaste y sigue igual.

Los dos primeros los ingreso de forma manual y funciona mi fórmula pero lo que copie y pegue no funciona.

No entendí. Qué ingresaste de forma manual, el número 13 o el texto 13, ¿en la celda H3?

Lo que falta por revisar, es cómo tienes los datos en la hoja "Equivalencias" en el rango "A2:C17", puedes decirme cómo tienes los datos en ese rango, los tienes como texto o como números, puedes también poner una imagen.

Por lo que veo en tus imágenes, la fórmula funciona cuando tienes el texto 13

Entonces hay que pasar los números a textos.

Prueba lo siguiente.

- En otra columna, por ejemplo la columna Z, pon la siguiente fórmula:

=CONCATENAR(H3)

Copia o arrastra la fórmula hacia abajo hasta el final de los datos de la columna H, con esto pasaremos los números a textos.

Luego copia la columna M y pégala como valores en la columna H (reemplazando los valores anteriores).

Prueba y me comentas. Si te funciona, puedes eliminar los datos de la columna M.

S a l u d o s . D a n t e   A m o r

Si es lo que necesitas.

Correcto Dante funciona así, pero yo traigo un código para hacer una copia, de otra hoja y al pegar los valores tengo que hacer este procedimiento manual no hay manera que no haga este proceso? o como pego la columna en H en texto. es una macro que me ayudaste y que copia muchas columnas pero en espeficico como le hago para que esta hoja se copie en texto?

Sub GuardaPAM()
'Por Dante Amor

Application.DisplayAlerts = False
Application.ScreenUpdating = False
Set l1 = ThisWorkbook
Set h1 = l1.Sheets("Ajustes")
ruta = l1.Path & "\"
lib2 = ruta & "5. 9 PAM ACLARACIONES XXXXXXXX.xlsx"
Set l2 = Workbooks.Open(lib2)
Set h2 = l2.Sheets("Datos")
'
cols = Array("K", "J", "L", "U")
dest = Array("A", "B", "H", "U")
'
For c = LBound(cols) To UBound(cols)
f = 2
Do While h1.Cells(f, cols(c)) <> ""
f = f + 1
Loop
'
f = f - 1
If f > 1 Then
If cols(c) = "J" Then
f = f - 1
End If
End If
u = h2.Range(cols(c) & Rows.Count).End(xlUp).Row + 1
u = 3
h1.Range(cols(c) & "2:" & cols(c) & f).Copy
h2.Range(dest(c) & u).PasteSpecial Paste:=xlValues
Next
End Sub

Te anexo la macro actualizada

Sub GuardaPAM()
'Por Dante Amor
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Set l1 = ThisWorkbook
    Set h1 = l1.Sheets("Ajustes")
    ruta = l1.Path & "\"
    lib2 = ruta & "5. 9 PAM ACLARACIONES XXXXXXXX.xlsx"
    Set l2 = Workbooks.Open(lib2)
    Set h2 = l2.Sheets("Datos")
    '
    cols = Array("K", "J", "L", "U")
    dest = Array("A", "B", "H", "U")
    '
    For c = LBound(cols) To UBound(cols)
        f = 2
        Do While h1.Cells(f, cols(c)) <> ""
            f = f + 1
        Loop
        '
        f = f - 1
        If f > 1 Then
            If cols(c) = "J" Then
                f = f - 1
            End If
        End If
        u = h2.Range(cols(c) & Rows.Count).End(xlUp).Row + 1
        u = 3
        h1.Range(cols(c) & "2:" & cols(c) & f).Copy
        h2.Range(dest(c) & u).PasteSpecial Paste:=xlValues
        If dest(c) = "H" Then
            nu = h2.Range(dest(c) & Rows.Count).End(xlUp).Row
            For i = u To nu
                h2.Cells(i, dest(c)) = "'" & h2.Cells(i, dest(c))
            Next
        End If
    Next
End Sub

Te va a poner los valores de la columna "H" como texto. De esa forma la fórmula debe funcionar.

Respuesta
1

Según la imagen la fórmula no contiene los separadores habituales: pto y coma o coma solamente. Y eso debe estar marcandote como falla.

Por ej, en mi caso que utilizo punto y coma se vería así:

=BUSCARV(H4;Equivalencias!$A$2:$C$17;3:0)

Podes utilizar la herramienta Buscar y Reemplazar para cambiar esas barras o corchetes (no se ve bien) por el separador que utilices en tus fórmulas.

Sdos.

Elsa

Gracias Elsa por el tiempo, pero cuando los cambio los | por ;  me aparece este mensaje

Ya cambie los caracteres de separación, pero aun así no me actualiza la fórmula, ¿alguna otra opción?

Como 'muchas manos en un plato hacen solo garabato... mejor enviame tu hoja si no lo resolvés revisando estos detalles:

- Que coloques el separador habitual de TU Excel (puede ser coma o pto y coma)

- Que en hoja Equivalencias, la col A debe tener los datos que estás buscando con el mismo formato, es decir '13 como texto según se aprecia en algunas celdas de tu imagen... si en esa hoja aparecen como número te dará error N/A.

Mis correos aparecen en la portada de mi sitio que dejo al pie.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas