Макросы

В один файл скопировать все закладки из выбранных файлов эксель

Sub CombineWorkbooks()
Dim FilesToOpen
Dim x, maincount As Integer

'Application.ScreenUpdating = False 'îòêëþ÷àåì îáíîâëåíèå ýêðàíà äëÿ ñêîðîñòè

'âûçîâåì äèàëîã ôàéëà äëÿ âûáîðà
FilesToOpen = Application.GetOpenFilename _
(FileFilter:="All files (*.*), *.*", _
MultiSelect:=True, Title:="Files to Merge")

If TypeName(FilesToOpen) = "Boolean" Then
MsgBox "íå âûáðàíî íèîäíîãî ôàéëà!"
Exit Sub
End If

'ïðîõîäèì ïî âûáðàííûì ôàéëààì
x = 1
    While x <= UBound(FilesToOpen)
        Set importWB = Workbooks.Open(Filename:=FilesToOpen(x))
        Sheets().Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
        importWB.Close savechanges:=False
        x = x + 1
    Wend
 
    Application.ScreenUpdating = True
End Sub

скрипт генерации пост из домена

Sub generateemails()

Dim countdelimiter As Integer
Dim j, i, k, iCellColEmail As Integer
Dim sCell, sCellEmailText As String
Dim TestArray() As String
Dim ithisrow, imaxrows As Long

  
    Columns("A:A").Select
    
    'âñòàâèì äëÿ íà÷àëà ñòîëáåö ïî êîòîðîìó áóäåì åìàéëû âñòàâëÿòü
    Range("A1").Activate
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "email1"
    
    imaxrows = 100000
    iCellColEmail = 4
    
    For ithisrow = 2 To imaxrows
    
            ' Cells(ñòðîêà, ñòîëáåö) çàáåðåì äîìåí
            sCellDomenText = Cells(ithisrow, iCellColEmail).Value
            
            'åñëè äîìåí åñòü è ìû íå äîáðàëèñü äî êîíöà ñïèñêà òî äåëàåì
          If Len(sCellDomenText) > 0 Then
            
            sCellEmailText = "info|mail|office|sales|zakaz|sale|pr|marketing|shop|buh|hello|service|hr|contact|manager|director|dir|tender|reception|it|zakupki|feedback|clients|priemnaya|adm|admin|ceo|tech|main|direktor|secretar|sekretar|manager1|manager2|manager3|registratura|info1|info2|info3"
            
            'ïîëó÷èì ìàññèâ åìàéëîâ ÷òîáû âñòàâëÿòü â ïåðâûé ñòîëáåö òî ÷òî ïåðåä @
            TestArray = Split(sCellEmailText, "|")
            
            
            For k = LBound(TestArray) To UBound(TestArray)
                If Len(TestArray(k)) > 0 Then
                                        
                                       
                    If k > 0 Then
                    'ñêîïèðóåì åå â áóôåð îáìåíà íà÷àëüíóþ ñòðîêó
                    Rows(ithisrow).Select
                    Selection.Copy
                    
                    Selection.Insert Shift:=xlDown
                    Application.CutCopyMode = False
                    
                    ithisrow = ithisrow + 1
                        
                    End If
                    
                    
                    Cells(ithisrow, 1).Value = TestArray(k) & "@" & sCellDomenText
                                       
                    
                    'îáùåå êîëè÷åñòâî ñòðîê áóäåò óâåëè÷èâàòüñÿ
                    
                End If
            Next
         End If
    Next
    
End Sub