viernes, 15 de enero de 2010

Rellenar Celdas en Blanco con Contenido de Celda Anterior


"A menudo tengo que copiar parte de una tabla dinámica y el resultado (ejemplo reducido) es el que muestro en la imagen:


Necesito rellenar las celdas en blanco con los respectivos rótulos. Manejo más de 500 filas ¿hay alguna manera rápida de efectuar esta tediosa tarea?"

Como casi siempre, hay varias formas de realizar esta labor. Vamos a solucionarlo utilizando la herramienta Ir a Especial.

1. Seleccionamos el rango B2:B14 y vamos al menú Edición/Ir a y pulsamos el botón Especial. Se abrirá la siguiente ventana en la que debemos marcar el botón de opción Celdas en blanco:


Al pulsar Aceptar excel selecciona automáticamente las celdas en blanco del rango que teníamos seleccionado:


2. Sin modificar esta selección, escribimos la fórmula:

=B2 que es la primera celda en la que tenemos un rótulo.

3. Acabamos pulsando Ctrl + Enter y problema resuelto:


76 comentarios:

  1. Hola, ante todo enhorabuena por el blog, siempre intento mirar las actualizaciones que vas poniendo; en este caso tengo una duda al hacer esta de Rellenar celdas en blanco: si hago exactamente lo que has hecho pero sin poner una cuadrícula al rango, entonces, la "Zona Este", no me queda seleccionada.
    A ver si me puedes ayudar.

    ResponderEliminar
  2. Gracias Miguel. Respecto a lo que me preguntas ocurre porque excel necesita alguna referencia para saber hasta dónde debe rellenar. Puedes utilizar la cuadrícula, como en mi ejemplo, o poner cualquier caracter en la celda siguiente a aquella hasta la que quieres que rellene.

    ResponderEliminar
  3. Gracias de nuevo Kiko, pues si que es como me decías; lo que pasa que creía que en el paso donde seleccionas el rango, Excel ya "captaba" que eran únicamente esas celdas las que querías rellenar.

    Un Saludo

    ResponderEliminar
  4. Hola Kiko gracias de nuevo. Una duda sencillita: debo enumerar una serie de 1500 filas pero hay unas dos mil filas más que están ocultas y que no deben entrar en la enumeración, si uso rellenar termino con 3500 en lugar de las 1500. ¿Alguna idea? Saludos y gracias.

    ResponderEliminar
  5. Hola Anónimo. Te contesto directamente en el siguiente post. Un saludo

    ResponderEliminar
  6. Muchísimas gracias por este aporte... estuve buscando la solución durante una semana, y de forma clara la encontré en este blog.
    Gracias!
    Marcela.

    ResponderEliminar
  7. Hola... disculpen tengo una duda. Yo manejo esa herramienta de excel, pero el tema es que al copiar una formula en los espacios en blancos, cuando ordeno de mayor a menor otra de las columnas que tienen, o copio y pego a otra hoja.. por estar en formula se me cambia lo escrito en la misma.. como puedo hacer para que en vez de formula me quede como valor?

    ResponderEliminar
  8. Hola Laura. Si no entiendo mal la pregunta la solución es muy sencilla (y perdón si la he entendido mal). Utilizando el ejemplo de este mismo post, después del paso 3 debes seleccionar el rango B2:B14 y pulsar el icono de copiar y finalmente ir a menú Edición/Pegado especial y seleccionar la opción Valores.

    ResponderEliminar
  9. Hola, quisiera hacer una pregunta de una operacion que yo creo sencilla pero no se como hacer.
    quiero lograr que una celda se auto complete con el valor de una segunda si aparece "x" valor en una tercera celda.
    se entiende? seria por ej. que b3 se llene con el valor de b2 si en b1 dice "casa", si en b1 dice cualquier otra cosa, que no se llene con nada.

    ResponderEliminar
  10. En la celda B3 debes escribir la siguiente fórmula (siguiendo con el ejemplo que propones):

    =SI(B1="casa";B2;"")

    ResponderEliminar
    Respuestas
    1. Hola Kiko, ya se que el tema se trató hace mucho tiempo pero acabo de encontrar esta solución a un problema que tenía y al aplicarla ha funcionado perfectamente, salvo por un pequeño detalle, y es que la condición que le he puesto =SI(A92=$L$1;L$3$;"") hace referencia a la fecha del dia corriente (L1=HOY()) con lo que al cambiar el dia borra el dato de la celda. Sabrías como evitar que se borrara. Muchas gracias.

      Eliminar
    2. Hola. Entiendo que lo que necesitas es que aparezcan el contenido de L3 en aquellas celdas cuya fecha (A92 y siguientes) sean iguales o anteriores a la fecha de HOY. Siendo así la solución es muy sencilla. Tu fórmula quedaría así: =SI(A92<=$L$1;$L$3;"")
      Si no lo he entendido biejn, por favor mándame un ejemplo de lo que tienes y lo que quieres conseguir a kiko.rial@gmail.com

      Eliminar
  11. kiko! miles de gracias por tu respuesta!! me funcionó y no sabés la cantidad de horas de laburo que me ahorraste. no se cómo agradecerte.besos!!

    ResponderEliminar
  12. Me alegra haberte ayudado. Espero que te siga resultando el blog (que de eso se trata...). Un saludo

    ResponderEliminar
  13. Hermano me Has salvado la vida!

    ResponderEliminar
  14. Me salvaste la vida, muchas gracias!!! Muy útil tu blog.

    Saludos.

    Rafael

    ResponderEliminar
  15. HOLA, HE TRATADO DE HCER LOS PASOS, PERO AL TENER CASI 45000 CELDAS SE VUELVE LOCO Y ME COPIA LO QUE QUIERE, NO RESPETA LOS ESPACIOS. GRACIAS

    ResponderEliminar
  16. Muchas gracias. Tenia que rellenar una excel enorme, y trabajarla, y me ha sido de una enorme ayuda. Juan Carlos

    ResponderEliminar
  17. hola me gustaria saber como puedo hacer para que en algunas tablas de exel que tengo que hacer con la programacion de mis compañeros de trabajo generalmente rotamos los turnos en la semana pero la idea es crear una forma de que si modifico un turno el dia lunes automaticamente me lo programe el resto de la semana no se si he sido claro con lo que quiero expresar gracias de todas formas por la colaboracion que me puedan brindar

    ResponderEliminar
    Respuestas
    1. Hola Alejandro. Me temo que no entiendo bien lo que necesitas. Si me puedes mandar un mail con un ejemplo intento ayudarte. Un saludo

      Eliminar
  18. Hola,
    me gustaría saber si ¿existe alguna forma de hacer esto mismo de manera automática?
    ¿con alguna formula o macro?

    muchas gracias!!

    ResponderEliminar
  19. Justo estaba necesitando este dato! Lo he encontrado de casualidad y me ha parecido MUY BENEFICIOSO. GRACIAS! :D

    ResponderEliminar
  20. gracias por el aporte.. era lo que necesitaba :) buen dia

    ResponderEliminar
  21. La verdad es que va muy bien este truco!, la de tiempo que me voy a ahorrar!, pero una pregunta, se podría hacer en una tabla dinámica??. Gracias!!!

    ResponderEliminar
    Respuestas
    1. En la tabla dinámica hay una forma más directa de conseguir lo mismo. Te contesto en el post de hoy. Un saludo

      Eliminar
  22. Hola Kiko!
    Tengo un conjunto de datos con varias celdas en blanco, y lo que necesito es mover a estas celdas en blanco el contenido de la celda que hay inmediatamente a su izquierda. Por ejemplo:
    "casa (blanco) coche (blanco) puerta" se quede "casa coche puerta"
    Espero haberme explicado, gracias por tu tiempo!

    ResponderEliminar
    Respuestas
    1. Por favor mándame un mail a kiko.rial@gmail.com con un archivo de excel y un ejemplo del problema y de la solución que buscas. Gracias

      Eliminar
  23. Hola!

    Donde esta el "ir a especial" no lo encuentro!!

    Saludos

    ResponderEliminar
    Respuestas
    1. En la versión 2003 en el menú Edición/Ir a. Se abrirá una ventana con un botón de Ir a especial. En la versión 2007 y 2010 dentro de la pestaña Inicio a la derecha de todo tienes el grupo Modificar. En el icono de los prismáticos, si abres la lista desplegable, encontrarás lo que buscas. Un saludo

      Eliminar
  24. quisiera saber como hacer para que se autocomplete la celda, si entre medio tengo una celda vacia
    Ej. A1 dice HOLA
    A2: vacia
    A3: quiero que diga HOLA

    No se autompleta la A3, si no esta escrita la A2...
    Hay forma de solucionarlo?
    Gracias

    ResponderEliminar
  25. yo lo que quiero es rellenar algo asi como una serie ejemplo tengo datos en y quiero que al jalar hacia abajo me rellene como esta en la columna B se podra hacer?


    A B
    1 Dato1 Dato1
    2 Dato2 Dato1
    3 Dato3 Dato1
    4 Dato4 Dato1
    5 Dato2
    6 Dato2
    7 Dato2
    8 Dato2
    9 Dato3
    10 Dato3
    11 Dato3
    12 Dato3

    ResponderEliminar
    Respuestas
    1. Hola Luis. Me parece que falta un trozo del mensaje porque no consigo entender exactamente lo que quieres hacer.

      Eliminar
  26. Que buena respuesta.

    ResponderEliminar
  27. Buenísimo el truco se podrá hacer con una macro

    ResponderEliminar
  28. Creo que es lo que busco

    ResponderEliminar
  29. Hola Mi nombre es Danil y recién veo tu Blog, muy bueno por cierto, estoy buscando la forma de hacer algo en forma automática y por ahí podrias darme un a idea de como hacerlo.
    Yo tengo :

    A B C D E
    01 CARLOS DATO1 DATO2 DATO3 DATO4
    02 CARLOS

    NECESITO HACER QUE BUSQUE POR TODA LA COLUMNA "A! Y QUE SI EN LA FILA ANTERIOR " EJEMPLO 01 " ES IGUAL AL CONTENIDO EN LA FILA QUE LE SIGUE, EJEMPLO 02 " COMPLETE LA CELDA B,C,D,E CON LOS DATOS DE LA FILA 01 " DATO1,DATO2,DATO3,DATO4 ·
    Espero me puedas orientar. Millll gracias

    ResponderEliminar
    Respuestas
    1. Hola Danil. Por favor mándame un ejemplo a kiko.rial@gmail.com explicando lo que quieres conseguir ya que no acabo de entender bien lo que quieres hacer. gracias

      Eliminar
  30. Sos la ley hermano... muchas gracias

    ResponderEliminar
  31. Excelente información precisa, rápida sin complicaciones. Gracias

    ResponderEliminar
  32. Súper bueno el tip, pude utilizarlo para 56000 registros en 2 minutos.
    Muchas gracias!

    ResponderEliminar
  33. Yuuuupiiiiii, excelente. Gracias.

    ResponderEliminar
  34. muchas gracias por estos aportes realmente aprendo mucho saludos desde chile

    ResponderEliminar
  35. Quería saber si hay alguna manera rápida de hacer lo mismo pero a la inversa, es decir, en una columna rellenar celdas en blanco con contenido anterior pero de abajo hacia arriba.

    ResponderEliminar
  36. buenas noches me gustaria saber como puedo llenar unos espacios en blanco que tengo en excel con unos terceros para poder montar una tabla dinamica, que pena ser tan canson pero trato de hacer lo que dice el libro en la pagina 48 y cuando realizo el procedimiento despues de darle en celdas en blanco me sale una nota que dice no se encontraron celdas. no se si este haciendo algun procedimiento mal, alguien me puede colaborar con esto estaria muy agradecido.

    ResponderEliminar
  37. primero copio el contenido de la celda B2 en la celda C2. ("Zona norte"). Luego en la celda C3 escribo la siguiente formula.
    =SI(B3="",C2,SI(B3=C2,,B3))
    copiar (arrastrar) la formula para el resto de celdas.
    * Una solución.
    Atte, Marco CM

    ResponderEliminar
  38. hola kiko,

    si quiero que lo que copie de la misma forma contenga una formula ?? como se haria?

    ResponderEliminar
  39. Hola Enrique. Necesito más información de lo que quieres conseguir para darte una respuesta.

    ResponderEliminar
  40. ola! quisiera saber como hacerle para saltar celdas en excel, tengo una formula de buscar la cual me da un codigo y nombre del material estos datos quiero vacearlos en otra hoja de excel la cual es una solicitud entonces cuanto busco otro codigo solo me lo da en la primera coolumna y yo quiero que asi como solicite codigo se vaya llenando las celda hacia abajo alguien podria ayudarme por favor.

    ResponderEliminar
  41. Hola! Me las estaba viendo con un Excel que tenía más trampas que una película de chinos (espacios en blanco en celdas aparentemente vacías, cambios de formato en celdas que impedían mostrar el valor cuando se las referenciaba tipo "A503", etc), pero al final, después de borrar los espacios y cambiar el formato, he conseguido seguir tus pasos en un excel de más de 5000 posiciones. Muchas gracias!!!

    ResponderEliminar
  42. Muchas Gracias!!! me ahorre 45 minutos de rellenado!!!

    ResponderEliminar
  43. Gracias por el aporte, un blog muy interesante, no soy usuaria común de Excel así que me has ahorrado una tarde de trabajo, ya lo he pasado a mis compañeros y les ha gustado, hasta mi jefe se ha beneficiado, saludos

    ResponderEliminar
    Respuestas
    1. Muchas gracias por el mensaje. Me alegro que os resultara útil. Un saludo

      Eliminar
  44. Hola, yo necesito que todas las celdas en blanco ponga "vacío", lo he intentado de esta manera pero no todos los espacios en blanco me aparecen "Vacío", todos los espacios en blanco se rellenan pero no con la palabra que yo quiero que es "Vacío", a ver si me podéis ayudar. Gracias!

    ResponderEliminar
    Respuestas
    1. Debes seguir los pasos indicados en este post hasta la selección de las celdas en blanco. Con las celdas seleccionadas simplemente escribe la palabra vacío y pulsa directamente Ctrl + Intro.

      Eliminar
  45. Muchas gracias por tu gran aporte!, me evitaste un terrible dolor de cabeza jaja... sigue adelante!! :)

    ResponderEliminar
  46. Excelente ayuda estimado, muchas gracias !!!

    ResponderEliminar
  47. Al seleccionar el rango de celdas y pulsar la opción celdas en blanco me aparece que no se encontraron celdas

    ResponderEliminar
    Respuestas
    1. Es porque, aunque visualmente lo parezca, las celdas no están en blanco. Prueba a utilizar la función LARGO con alguna de estas celdas y verás que obtienes un resultado mayor que cero.

      Eliminar
  48. Hola buenas noches, como logro copiar el valor de una celda llamese A3, con el valor de la celda A1, solo si la celda A2 se encuentra llena con cualquier valor

    ResponderEliminar
  49. HOLA KIKO:

    NECESITO QUE ME AYUDES CON LO SIGUIENTE NECESITO HACER UNA FORMULAR DE QUE EN UN TEXTO DE 20 PALABRAS ME APAREZCAN BLANCOS A LA IZQUIERDA Y A LA DERECHA ME FIGURE UN NUMERO, POR EJEMPLO SI QUIERO EL NUMERO 500,00 ME FIGUE 14 ESPACIOS EN BLANCO Y LUEGO EL NUMERO PARA COMPLETAR LAS 20 CASILLAS

    ResponderEliminar
    Respuestas
    1. Hola fab. Siempre tendremos un número, con los dígitos que sea, pero con dos decimales? En caso negativo proporcionarme, por favor, 3 ó 4 ejemplos de números que has de introducir y transformar (es para buscar alguna parte común en el formato final).
      Un saludo

      Eliminar
  50. Hola buenas noches primera vez que ingreso a tu blog, quiero rellenar unas celdas que están en blanco hacia abajo con la función SI, ejemplo: Columna A COLOMBINA Y en columna B DIRECTOR necesito rellenar hacia abajo muchas celdas, te agradezco tu ayuda.

    ResponderEliminar
    Respuestas
    1. Hola. Necesito que me especifiques más lo que quieres hacer y qué problemas te encuentras, ya que de lo que me comentas en el mensaje no veo el problema. Gracias

      Eliminar
  51. hola. le doy la función de rellenar celdas en blanco pero me rellena es con =E23556 (osea el numero de la fila y columna)

    ResponderEliminar
  52. Hola Kiko, primero agradecer tu trabajo en esta página. Espero que puedas ayudarme con el problema que tengo. En mi caso me gustaría que en base al valor de una celda (el cual sería una palabra) me colocase dos valores en dos celdas. Ya tengo la lista de NOMBRES y de VALORES en una tabla, tal que:

    A B C
    1 Nombre1 Valor X1 Valor Y1
    2 Nombre2 Valor X2 Valor Y2
    3 ...etc.

    De esta forma cuando meta el valor (Nombre) que corresponda en otra tabla se me rellenen con los datos que acompañan al nombre correspondiente de la columna B y C.

    Adicionalmente, me gustaría saber si el nombre debe ser exactamente el mismo o si se podría, a medida que vaya escribiendo, ir "autocompletando" la casilla.

    Espero tu respuesta.
    Gracias por adelantado.

    ResponderEliminar
    Respuestas
    1. Empezando por el final... el autocompletado puedes verlo en:
      http://lareboticadeexcel.blogspot.com.es/2014/08/lista-desplegable-autocompletable.html
      Respecto a laprimera parte de la pregunta lo puedes solucionar directamente con la función BUSCARV.

      Eliminar
  53. Muchas gracias, al final lo conseguí resolver. Además de la función BUSCARV añadí un SI.ERROR para que no apareciese #N/A en las celdas a rellenar cuando no había una valor introducido.

    Quedó así: =SI.ERROR(BUSCARV(A2;$K$2:$M$11;2);""), siendo A2 la celda donde introducir el nombre y $K$2:$M$11 la matriz donde buscar el dato. Como en ese caso me interesaba el primer valor que correspondía (Xn) introduje un 2 (2º columnba de la matriz).

    Muchas gracias por la ayuda.
    Un saludo.

    ResponderEliminar
  54. Hola
    Cuando aplico la formula en lugar de copia correctamente valor de la celda anterior, me copia la formula en todas las celdas en blanco.
    por ejemplo: pongo =A2 y luego crtl+intro y me copia =A2 en las celdas en blanco
    ¿Como puedo solucionarlo?

    ResponderEliminar
  55. Hola, nose porque pero me copia la información que escribo en la barra de formulas.

    ResponderEliminar