Macro Ordenar alfabéticamente y copiar valor
Ustedes me ayudaron con esta excelente. Solo quería algo más.
Esta fórmula da el nombre del valor de una celda en un libre que tiene muchas hojas.
Me gustaría añadirle que me repitiera en todas las hojas en una celda la fórmula ( =EXTRAE(A4, 9,40) )
Y que al final de todo me ordenara Alfabéticamente todas las Hojas.
Sub NombraHojas()
'---- Variables modificables:
'=== FELIX: Modifica estos datos de acuerdo a tu planilla:
NombreEn = "P3" ' celda donde está el nombre a dar a la hoja
Excluir = "RESUMEN" ' si hubiera alguna hoja que no debería re nombrarse
'---- fin Variables
'
'---- inicio de rutina:
'
For Each hoja In Sheets
If hoja.Name <> Excluir Then
NomHoja = hoja.Range(NombreEn).Value
On Error Resume Next
hoja.Name = NomHoja
If Err <> 0 Then
ElMensaje = "La hoja actual no puede tomar el nombre" & Chr(10) & _
IIf(Len(NomHoja), NomHoja, "<<está vacía!>>") & Chr(10) & "Modifiquelo en celda y relance esta macro" & Chr(10) & " Se interrumpe esta macro" & Chr(10)
TipoMens = vbCritical
ElTitulo = "NOMBRE INCOMPATIBLE!"
MsgBox ElMensaje, TipoMens, ElTitulo
GoTo TheEnd
Else
cont = cont + 1
End If
Err.Clear
On Error GoTo 0
End If
Next
TheEnd:
ElMensaje = IIf(cont = 0, "NO SE CAMBIO NINGUN NOMBRE DE HOJA", "Se renombraron: " & cont)
TipoMens = IIf(cont = 0, vbCritical, vbInformation)
ElTitulo = IIf(cont = 0, "NO SE HIZO NADA", "TERMINADO!")
MsgBox ElMensaje, TipoMens, ElTitulo
End Sub