<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VBA%2FExcel%2FAccess%2FWord%2FExcel%2FWorksheets</id>
		<title>VBA/Excel/Access/Word/Excel/Worksheets - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VBA%2FExcel%2FAccess%2FWord%2FExcel%2FWorksheets"/>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Worksheets&amp;action=history"/>
		<updated>2026-04-06T22:21:31Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Worksheets&amp;diff=1612&amp;oldid=prev</id>
		<title> в 16:33, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Worksheets&amp;diff=1612&amp;oldid=prev"/>
				<updated>2010-05-26T16:33:00Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 16:33, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Worksheets&amp;diff=1613&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Worksheets&amp;diff=1613&amp;oldid=prev"/>
				<updated>2010-05-26T12:47:36Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Do... Loop Until Loops with Worksheets==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Sub Create_Worksheets()&lt;br /&gt;
     Dim strNewSheet As String&lt;br /&gt;
     Do&lt;br /&gt;
         strNewSheet = &amp;quot;asdf&amp;quot;&lt;br /&gt;
         If strNewSheet &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
             ActiveWorkbook.Worksheets.Add&lt;br /&gt;
             ActiveSheet.Name = strNewSheet&lt;br /&gt;
         End If&lt;br /&gt;
     Loop Until strNewSheet = &amp;quot;&amp;quot;&lt;br /&gt;
 End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Dynamic Arrays for worksheet name==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Option Base 1&lt;br /&gt;
Sub MySheets()&lt;br /&gt;
    Dim myArray() As String&lt;br /&gt;
    Dim myCount As Integer, NumShts As Integer&lt;br /&gt;
    &lt;br /&gt;
    NumShts = ActiveWorkbook.Worksheets.count&lt;br /&gt;
    ReDim myArray(1 To NumShts)&lt;br /&gt;
    &lt;br /&gt;
    For myCount = 1 To NumShts&lt;br /&gt;
        myArray(myCount) = ActiveWorkbook.Sheets(myCount).name&lt;br /&gt;
    Next myCount&lt;br /&gt;
    &lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==For...Next Loop with Worksheet==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub FilePathInFooter()&lt;br /&gt;
         Dim i As Integer, sFilePath As String&lt;br /&gt;
         sFilePath = ActiveWorkbook.FullName&lt;br /&gt;
         For i = 1 To Worksheets.Count Step 1&lt;br /&gt;
             Worksheets(i).PageSetup.CenterFooter = sFilePath&lt;br /&gt;
         Next i&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Grouping Worksheets==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub GroupSheets()&lt;br /&gt;
         Dim asNames(1 To 3) As String&lt;br /&gt;
         Dim i As Integer&lt;br /&gt;
         asNames(1) = &amp;quot;Jan 2007&amp;quot;&lt;br /&gt;
         asNames(2) = &amp;quot;Mar 2007&amp;quot;&lt;br /&gt;
         asNames(3) = &amp;quot;May 2007&amp;quot;&lt;br /&gt;
         Worksheets(asNames(1)).Select&lt;br /&gt;
         For i = 2 To 3&lt;br /&gt;
         Worksheets(asNames(i)).Select Replace:=False&lt;br /&gt;
         Next i&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Looping Through Worksheets in a Workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub WorksheetLoop() &lt;br /&gt;
    Dim nIndex As Integer &lt;br /&gt;
    For nIndex = 1 To ThisWorkbook.Worksheets.Count &lt;br /&gt;
        Debug.Print ThisWorkbook.Worksheets(nIndex).Name &lt;br /&gt;
    Next &lt;br /&gt;
End Sub &lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==move the second worksheet to end of workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub SimpleWorksheetMovement() &lt;br /&gt;
    ThisWorkbook.Worksheets(2).Move after:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count) &lt;br /&gt;
End Sub &lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==performs a simple bubble sort to sort the worksheets in the workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub AlphabetizeWorksheets()&lt;br /&gt;
    Dim bSorted As Boolean&lt;br /&gt;
    Dim nSheetsSorted As Integer&lt;br /&gt;
    Dim nSheets As Integer&lt;br /&gt;
    Dim n As Integer&lt;br /&gt;
    Dim wb As Workbook&lt;br /&gt;
    &lt;br /&gt;
    Set wb = ActiveWorkbook&lt;br /&gt;
    nSheets = wb.Worksheets.Count&lt;br /&gt;
    nSheetsSorted = 0&lt;br /&gt;
    Do While (nSheetsSorted &amp;lt; nSheets) And Not bSorted&lt;br /&gt;
        bSorted = True&lt;br /&gt;
        nSheetsSorted = nSheetsSorted + 1&lt;br /&gt;
        For n = 1 To nSheets - nSheetsSorted&lt;br /&gt;
            If StrComp(wb.Worksheets(n).name, wb.Worksheets(n + 1).name, vbTextCompare) &amp;gt; 0 Then&lt;br /&gt;
                wb.Worksheets(n + 1).Move _&lt;br /&gt;
                    before:=wb.Worksheets(n)&lt;br /&gt;
                bSorted = False&lt;br /&gt;
            End If&lt;br /&gt;
        Next&lt;br /&gt;
    Loop&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sort all worksheets==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub SortAllSheets()&lt;br /&gt;
    Dim wb As Workbook&lt;br /&gt;
    Dim ws As Worksheet&lt;br /&gt;
    Dim rng As Range&lt;br /&gt;
    Dim cSheets As Integer&lt;br /&gt;
    Dim sSheets() As String&lt;br /&gt;
    Dim i As Integer&lt;br /&gt;
    Set wb = ActiveWorkbook&lt;br /&gt;
    &lt;br /&gt;
    cSheets = wb.Sheets.Count&lt;br /&gt;
    ReDim sSheets(1 To cSheets)&lt;br /&gt;
    &lt;br /&gt;
    For i = 1 To cSheets&lt;br /&gt;
      sSheets(i) = wb.Sheets(i).Name&lt;br /&gt;
    Next&lt;br /&gt;
    &lt;br /&gt;
    Set ws = wb.Worksheets.Add&lt;br /&gt;
    For i = 1 To cSheets&lt;br /&gt;
      ws.Cells(i, 1).Value = sSheets(i)&lt;br /&gt;
    Next&lt;br /&gt;
    &lt;br /&gt;
    ws.Columns(1).Sort Key1:=ws.Columns(1), _&lt;br /&gt;
       Order1:=xlAscending&lt;br /&gt;
    &lt;br /&gt;
    For i = 1 To cSheets&lt;br /&gt;
      sSheets(i) = ws.Cells(i, 1).Value&lt;br /&gt;
    Next&lt;br /&gt;
    &lt;br /&gt;
    Application.DisplayAlerts = False&lt;br /&gt;
    ws.Delete&lt;br /&gt;
    Application.DisplayAlerts = True&lt;br /&gt;
    &lt;br /&gt;
    For i = 1 To cSheets&lt;br /&gt;
      wb.Sheets(sSheets(i)).Move After:=wb.Sheets(cSheets)&lt;br /&gt;
    Next&lt;br /&gt;
    &lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==The Sheets Collection==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub WorksheetIndex()&lt;br /&gt;
           Dim i As Integer&lt;br /&gt;
           For i = 1 To ThisWorkbook.Worksheets.Count&lt;br /&gt;
           MsgBox ThisWorkbook.Worksheets(i).name &amp;amp; _&lt;br /&gt;
                 &amp;quot; has Index = &amp;quot; &amp;amp; _&lt;br /&gt;
                 ThisWorkbook.Worksheets(i).Index&lt;br /&gt;
           Next i&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Use for loop to loop through all worksheets==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub macro_loop4()&lt;br /&gt;
  Dim i&lt;br /&gt;
  For i = 1 To ThisWorkbook.Worksheets.Count&lt;br /&gt;
    Debug.Print ThisWorkbook.Worksheets(i).Name&lt;br /&gt;
  Next i&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>