Modificación de código vba de excel existente y unión con código vba solicitado

Expertos

Mi inquietud son la siguiente tengo un código que renombra varias hojas de un libro de excel cuya estructura está basada en un rango donde la designación empieza en la primera hoja y quiero modificarla y que inicie en la hoja consecutiva la ejecución y al mismo tiempo se oculte la hoja donde se encuentra la condición indicada en la segunda línea del escrito.

Espero que ustedes me puedan ayudar con mis inquietudes cualquier inconveniente con la petición me lo pueden hacérmelo llegar por aquí.

1 respuesta

Respuesta
1

Puedes poner tu código para revisarlo

Estimado Señor Dante aquí envío el código nombrado.

Sub ExtraerNombreDeHojas() 'Macro para extraer los nombres de las hojas del archivo Dim i As Long Dim BuscarHoja As Boolean On Error Resume Next BuscarHoja = (Worksheets("HojaNombres").Name <> "") If BuscarHoja = False Then Sheets.Add before:=Sheets(1) End If ActiveSheet.Name = "HojaNombres" Sheets("HojaNombres").Activate Sheets("HojaNombres").Cells.Select Selection.ClearContents For i = 1 To Sheets.Count Sheets("HojaNombres").Range("A" & i).Value = Sheets(i).Name 'Nombre de la hoja Next i End Sub Sub EscribirDatos() 'Copia los valores de la hoja Datos y los pega en varias hojas deseadas Dim i As Long Dim BuscarHoja As Boolean Dim nombreHoja() As String Dim valor1() As String Dim valor2() As String 'Dim valor3() As String 'se puede adicionar otro campo a escribir con este vector On Error Resume Next BuscarHoja = (Worksheets("Datos").Name <> "") If BuscarHoja = False Then Sheets.Add before:=Sheets(1) End If ActiveSheet.Name = "Datos" Sheets("Datos").Activate ActiveSheet.Range("A2").Activate i = 0 Do While Not IsEmpty(ActiveCell) i = i + 1 ActiveCell.Offset(1, 0).Activate Loop ReDim nombreHoja(i) ReDim valor1(i) ReDim valor2(i) 'ReDim valor3(i)'Puedes adicionar mas vectores Sheets("Datos").Activate ActiveSheet.Range("A2").Activate i = 0 Do While Not IsEmpty(ActiveCell) i = i + 1 nombreHoja(i) = ActiveCell.Value valor1(i) = ActiveCell.Offset(0, 1).Value valor2(i) = ActiveCell.Offset(0, 2).Value 'valor3(i) = ActiveCell.Offset(0, 3).Value 'Puedes adicionar mas vectores ActiveCell.Offset(1, 0).Activate Loop For j = 1 To i Step 1 Sheets(nombreHoja(j)).Activate ActiveSheet.Range("A2") = valor1(j) ActiveSheet.Range("b2") = valor2(j) 'ActiveSheet.Range("c2") = valor3(j) 'Puedes adicionar mas vectores Next j End Sub

No se pegó bien el código, no está línea por línea.

Puedes intentar pegarlo en un archivo de texto y después pegarlo aquí.

O intenta pegar el código, utilizando el icono "Insertar código fuente"

O envíame tu archivo y me explicas con un ejemplo lo que tienes.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Osvaldo Luis Vildoso

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas