/ / קבצים במדריך ב - VBA של

קבצים בספרייה ב - VBA של

להלן נבחן תוכנית ב Excel VBA כי לולאות דרך כל חוברות עבודה סגורות וגליונות עבודה ב ספרייה, ומציג את כל השמות.

הורד Book1.xls, Book2.xls, Book3.xls, Book4.xls ו Book5.xls ולהוסיף אותם "C: מבחן"

מצב:

קבצים בדוגמה של מדריך

הוסף את שורות הקוד הבאות ללחצן הפקודה:

1. ראשית, אנו מכריזים על שני משתנים של סוג מחרוזת, אובייקט גיליון עבודה ושני משתנים מסוג שלם.

Dim directory As String, fileName As String, sheet As Worksheet, i As Integer, j As Integer

2. כדי למנוע הבהוב מסך, כבה את עדכון המסך.

Application.ScreenUpdating = False

3. אתחל את ספריית המשתנים. אנו משתמשים בפונקציה Dir כדי למצוא את * .xl הראשון ?? הקובץ מאוחסן בספריה זו.

directory = "c:test"
fileName = Dir(directory & "*.xl??")

הערה: הפונקציה Dir תומך בשימוש במספר תווים (*) ו תו בודד (?) Wildcards לחפש כל סוג אחר של קבצי Excel.

4. המשתנה fileName מחזיקה כעת את השם של קובץ ה- Excel הראשון שנמצא בספריה. הוסף לולאה בזמן.

Do While fileName <> ""

Loop

הוסף את שורות הקוד הבאות (5, 6, 7, 8 ו 9) לולאה.

5. לאתחל את המשתנים של מספר שלם ולהוסיף את השם של קובץ Excel לעמודה הראשונה של השורה i.

i = i + 1
j = 2
Cells(i, 1) = fileName

6. אין דרך פשוטה לחלץ נתונים (או שמות גיליונות) מקבצי Excel סגורים. לכן, אנו פותחים את קובץ ה- Excel.

Workbooks.Open (directory & fileName)

7. הוסף את כל שמות הגיליון של קובץ ה- Excel לעמודות האחרות של השורה i.

For Each sheet In Workbooks(fileName).Worksheets
    Workbooks("files-in-a-directory.xls").Worksheets(1).Cells(i, j).Value = sheet.Name
    j = j + 1
Next sheet

8. סגור את קובץ ה- Excel.

Workbooks(fileName).Close

9. פונקציית Dir היא פונקציה מיוחדת. כדי לקבל את קבצי Excel אחרים, אתה יכול להשתמש בפונקציה Dir שוב ללא שום ארגומנטים.

fileName = Dir()

הערה: כאשר אין שמות קבצים נוספים תואמים, הפונקציה Dir מחזירה מחרוזת באורך אפס (""). כתוצאה מכך, Excel VBA יעזוב את לולאה האם.

.10 הפעל שוב את המסך (מחוץ ללולאה).

Application.ScreenUpdating = True

11. בדוק את התוכנית.

תוצאה:

קבצים בספרייה ב - VBA של

קרא גם: