Nombre hojas después de utilizar este código
Saludos a todos, sucede que encontré este código para darle nombre las hojas en excel
'Sub renombrar() CÓDIGO PARA ASIGNAR UN NOMBRE A LA HOJA DE ACUERDO A UNA CELDA EN LA BASE
On Error GoTo fin ' si se produce un error se va a la etiqueta fin
Dim N As Integer
Dim hojas As Integer
Dim Encontrado As Boolean
Sheets("Desvio Asiste 1").Select
Range("A1:A1").Select
Dim c As Range
Dim s As Worksheet
Dim i As Integer
i = 1
For Each c In Selection
Sheets(i).Name = c
i = i + 1
Next c
Exit Sub
fin: ' etiqueta fin
'aquí es donde buscaremos el nombre con un número para que no se dupliquen
For N = 1 To ActiveWorkbook.Sheets.Count
Encontrado = False
For hojas = 1 To i - 1
If Sheets(hojas).Name = c & N Then
Encontrado = True
Exit For
End If
Next hojas
If Encontrado = False Then
Sheets(i).Name = c & N
Exit For
End If
Next N
Resume Next ' vuelve a donde produjo el error
'End Sub
----------------------------------------------------------------------------------------------------------------
Lo utilice y funciona de 10 pero después trato de ejecutar el siguiente código pero no lo hace
'escribe fórmula para comparar datos de mte y asiste en el desvío
Sheets("Calificacion Desvio").Select
Range("D6").Select
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC2,'DIA1'!C1:C3,3,FALSE)"
Selection.AutoFill Destination:=Range("D6:D41"), Type:=xlFillDefault
Range("D6:D41").Select
Range("C6").Select
Mi pregunta es por que después de utilizar el primer código el segundo ya no funciona, cabe mencionar que si utilizo el segundo código en otro modulo funciona adecuadamente, me podrían indicar por favor que es lo que le debo de borrar o sustituir
Gracias y saludos :)
'Sub renombrar() CÓDIGO PARA ASIGNAR UN NOMBRE A LA HOJA DE ACUERDO A UNA CELDA EN LA BASE
On Error GoTo fin ' si se produce un error se va a la etiqueta fin
Dim N As Integer
Dim hojas As Integer
Dim Encontrado As Boolean
Sheets("Desvio Asiste 1").Select
Range("A1:A1").Select
Dim c As Range
Dim s As Worksheet
Dim i As Integer
i = 1
For Each c In Selection
Sheets(i).Name = c
i = i + 1
Next c
Exit Sub
fin: ' etiqueta fin
'aquí es donde buscaremos el nombre con un número para que no se dupliquen
For N = 1 To ActiveWorkbook.Sheets.Count
Encontrado = False
For hojas = 1 To i - 1
If Sheets(hojas).Name = c & N Then
Encontrado = True
Exit For
End If
Next hojas
If Encontrado = False Then
Sheets(i).Name = c & N
Exit For
End If
Next N
Resume Next ' vuelve a donde produjo el error
'End Sub
----------------------------------------------------------------------------------------------------------------
Lo utilice y funciona de 10 pero después trato de ejecutar el siguiente código pero no lo hace
'escribe fórmula para comparar datos de mte y asiste en el desvío
Sheets("Calificacion Desvio").Select
Range("D6").Select
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC2,'DIA1'!C1:C3,3,FALSE)"
Selection.AutoFill Destination:=Range("D6:D41"), Type:=xlFillDefault
Range("D6:D41").Select
Range("C6").Select
Mi pregunta es por que después de utilizar el primer código el segundo ya no funciona, cabe mencionar que si utilizo el segundo código en otro modulo funciona adecuadamente, me podrían indicar por favor que es lo que le debo de borrar o sustituir
Gracias y saludos :)
1 Respuesta
Respuesta de calvuch
1