יצירת תפריט לגיליונות ב- Excel
יצירת תפריט לגיליונות ב- Excel
יצירת תפריט לגיליונות ב- Excel

איל היי,

אחלה אתר, לא חשבתי שאמצא חומר על אקסל בעברית. השאלה שלי היא כזו : יש לי קובץ שמכיל כ40 גליונות. אני מעוניין לעשות גיליון שיכיל טבלה שמכילה את שמות כל הגיליונות. ושם כל גיליון בטבלה ישמש כקישור לאותו גיליון.

האם נתקלת בפונקציה שעושה דבר כזה? אשמח לכל עזרה או כיוון. תודה מראש. דוד

שלום,

להלן פתרון באמצעות קוד VBA.

לטובת מי שלא יודע מה לעשות עם קוד כזה

אני מצרף הנחיות ברורות כיצד לשתול אותו בתוך קובץ ה- Excel.

1. ראשית שמור את הקובץ כך שהוא יוכל להכיל קוד

קובץ > שמור בשם > בחר באפשרות xlsm

2. כעת לחץ על Alt+F11

לפניך נפתח עורך ה-VBA

3. בצד שמאל, לחץ על השם הקובץ הנוכחי > מקש ימני > INSERT >  ובחר באפשרות MODULE

4. בעקבות השלב הקודם, נוצר לך “ענף” חדש בעץ, שנקרא לרוב, Module1

לחץ פעמים על Module1 והדבק בתוכו את הקוד שמופיע בתחתית פוסט זה.

5. בסיום חזור ל Excel

6. שמור את הקובץ,

7. כעת, בכרטיסיה תצוגה > לחץ על פקודות מאקרו > ובחר בפקודה החדשה שנקראת CreateMenuAccordingSheetsNames

8. וזהו - התפריט נוצר!

בהצלחה!

אם אתם מחפשים לשדרג את ניתוח הנתונים והדו"חות שלכם באופן מקצועי ?
אני ממליץ בחום לשקול את השירות שלנו של תותח Excel.
המומחיות שלנו באקסל תורמת להגשמת היעדים ולפתרון של בעיות מורכבות בצורה יעילה ומהירה.
עם מומחה Excel, אתם יכולים להיות בטוחים שתהליך העבודה שלכם יתנהל בצורה מקצועית.
ליצירת קשר לחצו כאן.

Sub CreateMenuAccordingSheetsNames()
 'Author : Eyal Bardugo
 'Website: http://excel.kova.co.il/
 '
 'Sub to create menu for all sheets
 
 Dim ws As Worksheet, menu\_name As String, I As Integer
 
 menu\_name = "Menu"
 
 'Put a header on B5
 Range("B5").Value = "Menu"
 
 On Error Resume Next
 
 'Check if there is old menu sheet, and if so - delete it
 Application.DisplayAlerts = False
 Sheets(menu\_name).Delete
 Application.DisplayAlerts = True
 
 'Add new menu sheet
 Sheets.Add Before:=Sheets(1)
 ActiveSheet.Name = menu\_name
 
 
 I = 4
 'loop all sheets and put a hyperlink to each one of them
 For Each ws In ActiveWorkbook.Sheets
 If ws.Name <> menu\_name Then
 Sheets(menu\_name).Cells(I, 3).Value = ws.Name
 ActiveSheet.Hyperlinks.Add Anchor:=Sheets(menu\_name).Cells(I, 3), Address:="", SubAddress:= \_
 "'" &  ws.Name & "'!A1", TextToDisplay:=ws.Name
 
 End If
 I = I + 1
 Next ws
 
 
End Sub

רוצה להפוך את עבודתך ב-Excel לפחות מסובכת ויותר יעילה?
מומחה Excel יכול להפוך תהליכים לאוטומטים ולבנות עבורך אקסלים יעילים.
צור קשר עכשיו