Jump to content

kuro.san

Members
  • Content Count

    13
  • Joined

  • Last visited

About kuro.san

  • Rank
    Member

Converted

  • Campos
    ,
  1. Nueva update, por un momento logre que funcionara, pero, aun no se pegan datos, me pueden apoyar a decirme que linea esta causando que no aparezcan todos los datos requeridos. Lo que ya logre hacer es, que se generen todas las hojas y que el nombre de esta cambie acorde a cierta celda. Me faltan 2 cosas 1. Que se copien los datos que faltan 2. Tengo un hipervinculo en uno de los rangos, pero solo se copia en formato de texto normal, como puedo hacer que aparezca el hipervinculo activo Ejemplo.xlsm
  2. Estoy detenido en este momento, al no saber exactamente como incluir mas rangos de celdas dentro de la tarea de hacer el "row.count", se que debo definir una variable para rango de celdas que voy a necesitar copiar, pero no estoy seguro si es correcto primero ejecutar la variable c sola y luego en orden las demas
  3. Ejemplo.xlsm Adjunto ejemplo de lo que seria la aplicacion, tratare de tomar sus recomendaciones y vere si puedo solucionarlo, si no, espero poder seguir contando con su apoyo, buen dia.
  4. Hola que tal, tomo la recomendación, sinceramente no se mucho de vba y si encuentro complicado entender cosas, de cierta forma cada uno escribe codigo a su manera y me confunde, pero no niego que usar vba y macros ayuda mucho con muchas tareas, en concreto lo que buscaba era que la macros leyera datos de ciertas columnas de la hoja 1 (como ejemplo) luego que copiara la hoja 2 (que contiene cierto formato que se repite), con esos datos, creara una nueva hoja, se pegara el formato de la hoja 2, y luego que de los datos leidos de las columnas en la hoja 1, pegara lo valores en la celdas definidas, por ultimo que cambiara el nombre de la hoja basandose en el contenido de cierta celda. Ahora me ayudaría mucho que me orientaran mas que me solucionaran de lleno, tomando en cuenta tu comentario del next, trate de hacer pruebas, pero aun lo logro hacer que funcione, por lo tanto mis dudas que surgieron: 1. si cada variable for necesita su next, eso quiere decir que tiene que hacerse por pasos, que lea columna por columna por pasos, o sea que exista una for y next para cada columna, en modo sucesivo, o es posible hacerlo como lo tengo 2. La ultima variable en repetirse debería ser next a toda vez que es la ultima que cierra el ciclo cambiando el nombre de la hoja nueva 3. Es practico tener un For y Next para cada columna o puedo compilarlas en una sola. De ante mano gracias por los comentarios y recomendaciones, y me disculpo por las cuestiones inexpertas de mi post
  5. Gracias, me ayudaste mucho, se aprecia la ayuda!! Thread Solucionado.
  6. Con la ayuda de muchos aqui, después de leer pude encontrar y utilizar esta macros, antes las variables solo eran "c" , ahora trate de agregarle mas, pero me marca error en la linea Next C, se supone que el macros lea los datos de los rangos de celdas definidas, luego copie un formato de otra hoja, y con esos datos nuevos cree una nueva hoja, definiendo el nombre con la celda j2, pero trate de hacerlo mas grande y quisiera agregar que tambien copie los datos de las celdas "B, I , J", pero me marca error, no se si deba cambiar la linea "Next c" para que haga el loop con las demas variables Sub Copia() Dim c As Range Dim u As Range Dim vd As Range Dim vdr As Range '-- Application.ScreenUpdating = False For Each c In Range("C2", Range("C" & Rows.Count).End(xlUp)) For Each u In Range("B2", Range("B" & Rows.Count).End(xlUp)) For Each vd In Range("I2", Range("I" & Rows.Count).End(xlUp)) For Each vdr In Range("J2", Range("J" & Rows.Count).End(xlUp)) Sheets("BASE").Copy , Sheets(Sheets.Count) With ActiveSheet .Range("J2") = c .Range("H3") = cu .Range("J59") = vd .Range("J60") = vdr If Len(.Name) > 10 Then .Name = Left(c.Offset(, 2), 10) Else .Name = c End If End With Next c Application.ScreenUpdating = True End Sub
  7. Lo siento lo mande por error, tengo lo siguiente tengo esta linea de ejecucion: Worksheets("Hoja2").Range("B2").Value Mediante el cual, se puede obtener el valor de determinada celda en determinada hoja. Quisiera saber de que manera puedo extender esto a mas hojas, de tal forma que al oprimir el boton con la macros asignada en mi "hoja 1" pueda tener un listado de las mismas tres celdas pero de diferentes hojas. Y que si se hace algun cambio, volviendo a oprimir el boton se vea el dato actualizado. Ejemplo.xlsx
  8. Muchas gracias Antoni, por la explicación y la corrección, saludos!!
  9. Podrias detallar que funcion realiza la macros exactamente?
  10. Me podrian definir que hace cada seccion de esta macro relacionada a este archivo: Sub Copia() Dim C As Range Application.ScreenUpdating = False For Each C In Range("A2", Range("A" & Rows.Count).End(xlUp)) Sheets("Molde").Copy , Sheets(Sheets.Count) With ActiveSheet .Range("A5") = C: .Name = Left(C.Offset(, 1), 31) End With Next C Application.ScreenUpdating = True End Sub Ejemplo Copiar Hoja.xlsm
  11. Como dato extra, claramente al utilizar las macros antes listadas las trate de acoplar a mi archivo, las que pegue son las que encontre sin modificaciones.
  12. Buenos dias, soy nuevo miembro y me da gusto formar parte de esta comunidad, espero pueden apoyarme con mi laborioso problema, lo detallo a continuación: Tengo un archivo el cual contiene una lista de datos, lista de la cual se quiere lo siguiente: 1. Tomar de la hoja "Indice" un nombre de la casilla "Iniciativa" y crear una hoja con ese nombre 2. Tomar el formato de la hoja "Base" y pegarlo igual en esa nueva hoja 3. Que tome los datos de la hoja "Indice" de las casillas "iniciativa" y "encargado" y los pegue en los campos correspondiente de la nueva hoja creada. (a fin de personalizar cada hoja nueva) 4. Establecer un vinculo que vaya de "nueva hoja" en las casillas "H3" "H5" y "H6", hacia las casillas que correspondan con el dato en la hoja "indice" ejemplo: si cambio el dato de fecha de revision en la hoja de nombre "Donar", este cambio se refleje en la casilla de "fecha de revision" en la hoja "Indice". 5. Por ultimo que se genere un hipervinculo en el campo "link" en la hoja "Indice" hacia la hoja correspondiente. De todas la tareas, ya logre realizar 4 con distintas macros, pero no logre hacer que una hiciera todo, al tratar de hacerlo, me daba error, yo no escribir las macros, la recopile de diferentes medios, pero no logre hacer que funcionaran, las anexo por si acaso: Generar carpetas con el nombre, pegar formato de base y cambiar un dato en cierta casilla Sub Copia() Dim C As Range Application.ScreenUpdating = False For Each C In Range("A2", Range("A" & Rows.Count).End(xlUp)) Sheets("Molde").Copy , Sheets(Sheets.Count) With ActiveSheet .Range("A5") = C: .Name = Left(C.Offset(, 1), 31) End With Next C Application.ScreenUpdating = True End Sub Generar hipervinculo Sub crearIndice() Dim hoja As Worksheet On Error Resume Next Set hoja = Worksheets("Indice") On Error GoTo 0 If hoja Is Nothing Then 'La hoja Indice no existe - Crearla en primera posición Worksheets.Add(Before:=Worksheets(1)).Name = "Indice" Else 'La hoja Indice ya existe - Limpiarla Worksheets("Indice").Cells.Clear End If 'Insertar título a la hoja Indice Worksheets("Indice").Range("A1").Value = "Indice" End sub Espero poder contar con su ayuda, llevo dias detenido sin saber que o como hacerle :( Programa Auditoria.xlsx
×
×
  • Create New...

Important Information

Privacy Policy