MyTetra Share
Делитесь знаниями!
Удаление-создание листа
Время создания: 16.03.2019 23:43
Текстовые метки: Удаление создание листа
Раздел: !Закладки - VBA - Excel - Листы

'======================================================================================

'#####удаление/создание листа по имени

'

'--------------------------------------------------------------------------------------

Function fun_ShAdd(ByVal strShName As String, _

ByVal blnRecreate As Boolean) As Worksheet

Dim strShNameAct As String

strShNameAct = ActiveSheet.Name


If blnRecreate Then 'пересоздание листа сначала удаляем

Call w_other.FnShDelete(strShName) 'удалить лист

End If

If w_other.FnShExists(ThisWorkbook, strShRefName) Then 'если лист существует

Set FnShAdd = ThisWorkbook.Sheets(strShName)

'очистка листа

FnShAdd.Cells.Clear

Else

Set FnShAdd = ThisWorkbook.Sheets.Add 'Before:=Sheets(1)

With FnShAdd

.Move Before:=Sheets(1)

.Name = strShName

End With

End If

Windows(ThisWorkbook.Name).Activate

Sheets(strShNameAct).Select

End Function

'--------------------------------------------------------------------------------------

Sub ShDelete(ByVal ShName As String)

On Error Resume Next

With Application

.DisplayAlerts = False

With .ThisWorkbook

For Each Sh In .Sheets

If Sh.Name = ShName Then Sh.Delete

Next Sh

End With

.DisplayAlerts = True

End With

End Sub

'--------------------------------------------------------------------------------------

'проверка существования листа

Function fun_ShExists(ByVal oWb As Workbook, _

ByVal strShName As String) As Boolean

With oWb

For Each Sh In .Sheets

If Sh.Name = strShName Then fun_ShExists = True: Exit Function

Next Sh

End With

End Function

'======================================================================================

Так же в этом разделе:
 
MyTetra Share v.0.53
Яндекс индекс цитирования