Muchas gracias KL, te puedo decir que aprendo muchos de todas tus respuestas
incluída ésta. Felices fiestas.
Post by unknownAprendiz,
Prueba el macro de abajo.
Saludos,
KL
'------Inicio Codigo-------
Sub AgregarHojaNueva()
Dim carInvalidos As Variant
Dim Celda As Range
Dim Hoja As Worksheet
Dim i As Integer
Dim NombreUnico As Boolean
Dim NombreValido As Boolean
Dim Ant As Integer
Dim Desp As Integer
carInvalidos = Array(":", "\", "/", "?", "*", "[", "]")
Application.ScreenUpdating = False
With ThisWorkbook
For Each Celda In Worksheets("Carpetas archivo").Range("A1:A10")
'comprobamos si ya existen hojas con los
'nombres q queremos usar.
NombreUnico = True
For Each Hoja In Worksheets
If Hoja.Name = Celda Then
MsgBox "Ya existe una hoja con el nombre: " _
& Celda
NombreUnico = False
Exit For
End If
Next Hoja
'comprobamos si el nombre contiene
'caracteres invalidos.
NombreValido = True
For i = 0 To UBound(carInvalidos)
If InStr(Celda, carInvalidos(i)) Then
MsgBox "El nombre " & Celda _
& " contiene caracteres invalidos."
NombreValido = False
Exit For
End If
Next i
'Creamos las hojas y asignamos los nombres validos.
If Not IsEmpty(Celda) And NombreUnico And NombreValido Then
Worksheets.Add(After:= _
Worksheets(Worksheets.Count)).Name = Celda.Value
End If
Next Celda
'Procedemos a ordenar las hojas alfabeticamente.
For Desp = 2 To Worksheets.Count
For Ant = Desp To Worksheets.Count
If UCase(Worksheets(Ant).Name) < _
UCase(Worksheets(Desp).Name) Then _
Worksheets(Ant).Move Before:=Worksheets(Desp)
Next
Next
'volvemos a la hoja principal.
Worksheets("Carpetas archivo").Activate
End With
End Sub
'------Fin Codigo-------
Post by AprendizSaludos KL
Te agradezco los links, pero están en inglés y todavía estoy un poco verde
para entender código.
Te pediría que para ayudarme, me escribieras un código para realizar lo
En un libro "Archivo general", la primera hoja se llama "Carpetas archivo",
y en la celda A1 y sucesivas A2, A3, etc.. estoy escribiendo el nombre de
las siguientes hojas del libro.... solo necesito escribir en las pestañas
(hojas del libro) que todavia no se han creado, dichos nombres mediante
código VBA. Gracias
José Rafael
Post by unknownAprendiz,
Para ejemplos de codigo podrias consultar estos links (mirate bien el hilo
entero)
Saludos,
KL
http://groups.google.es/groups?hl=es&lr=&frame=right&th=513414872baba1e5&seekm=cbqd36%243dt2%40imsp212.netvigator.com#link2
http://groups.google.es/groups?hl=es&lr=&frame=right&th=c42262ba9c05022f&seekm=%230L0GQUfDHA.3324%40TK2MSFTNGP11.phx.gbl#link2
http://groups.google.es/groups?hl=es&lr=&frame=right&th=c57ba2c2ea4953f5&seekm=%23OqgynsuEHA.3352%40tk2msftngp13.phx.gbl#link2