But, if you add with macro, you can add more layers.
and you can change the name of layers manually.
My macro is as listed below.
' In standard Module
Option Explicit
Public Enum myProgress
minVisiProg = 30
End Enum
Sub AddLayers()
Dim i As Long, iRed As Long, iGreen As Long, iBlue As Long, Imax As Long
Dim strMax As String
Dim Lay As Layer
Dim strHead As String
strMax = InputBox("How many layers ?", , 1)
strHead = InputBox("Head of layers' name ?", , "AddedLayer")
If IsNumeric(strMax) Then
Imax = Int(strMax)
PleaseWait.Show vbModeless
If Imax > minVisiProg Then PleaseWait.ProgressBar1.Visible = True
PleaseWait.Repaint
For i = 1 To Imax
DoEvents
' If myMod(i, 5) = 0 Then GiveColor
iRed = myRnd
iGreen = myRnd
iBlue = myRnd
Set Lay = ActivePage.Layers.Add(strHead & "_" & varZero(i,
Imax) & i)
Lay.CellsC(visLayerColor).FormulaU = "RGB(" & iRed & "," &
iGreen & "," & iBlue & ")"
' Lay.CellsC(visLayerVisible).Formula = False
If Imax > minVisiProg Then
If myMod(i, 10) = 0 Then
PleaseWait.ShowProgress Imax, i
End If
End If
Next
Unload PleaseWait
MsgBox "Num of layers became " & CountLayers & "."
SendKeys "%(VL)"
End If
End Sub
Private Function myMod(i As Long, Low As Long) As Long
myMod = i - Low * Int(i / Low)
End Function
Private Function myRnd()
myRnd = Int(Rnd * 256)
End Function
Private Function varZero(i As Long, Imax As Long) As String
Dim LenNum As Long, J As Long
LenNum = Len(Str(Imax)) - Len(Str(i))
varZero = ""
If LenNum > 0 Then
For J = 0 To LenNum - 1
varZero = varZero & "0"
Next
End If
End Function
Private Function CountLayers()
CountLayers = ActivePage.Layers.Count
Debug.Print CountLayers
End Function
' UserForm named "PleaseWait" that has label and progress bar.
Option Explicit
Private Sub UserForm_Activate()
Me.Repaint
End Sub
Private Sub UserForm_Deactivate()
Unload Me
End Sub
Private Sub UserForm_Initialize()
ProgressBar1.Visible = False
ProgressBar1.Value = 0
End Sub
Private Function BarProgress(Imax As Long, i As Long) As Long
Dim TenPer As Long
If Imax > 0 Then
BarProgress = i / Imax * 100
Else
BarProgress = 0
End If
End Function
Public Sub ShowProgress(Imax As Long, i As Long)
ProgressBar1.Value = BarProgress(Imax, i)
Me.Repaint
End Sub