मुख्य सामग्री पर जाएं

एक्सेल से आउटलुक कैलेंडर में जन्मदिन कैसे आयात करें?

लेखक: ज़ियाओयांग अंतिम संशोधित: 2022-10-19

यदि आपके पास वर्कशीट में जन्मदिन की जानकारी की एक लंबी सूची है, तो अब, आप इन जन्मदिनों को अपने आउटलुक कैलेंडर में घटनाओं के रूप में आयात करना चाहते हैं। आप कुछ त्वरित तरीकों से इस कार्य को कैसे निपटा सकते हैं?


वीबीए कोड के साथ एक्सेल से आउटलुक कैलेंडर में जन्मदिन आयात करें

आम तौर पर, आउटलुक कैलेंडर में जन्मदिन आयात करने का कोई सीधा तरीका नहीं है, यहां, मैं इस समस्या को हल करने के लिए एक वीबीए कोड बनाऊंगा, कृपया निम्नलिखित चरणों का पालन करें:

1. वह वर्कशीट खोलें जिसमें वे जन्मदिन हैं जिन्हें आप आउटलुक में आयात करना चाहते हैं, और फिर दबाए रखें ALT + F11 कुंजी को खोलने के लिए अनुप्रयोगों के लिए माइक्रोसॉफ्ट विज़ुअल बेसिक खिड़की.

2। क्लिक करें सम्मिलित करें > मॉड्यूल, और मॉड्यूल विंडो में निम्नलिखित कोड पेस्ट करें।

वीबीए कोड: आउटलुक कैलेंडर में जन्मदिन आयात करें

Sub ImportBirthdaysToCalendar()
'Updateby ExtendOffice
Dim xWs As Excel.Worksheet
Dim xRng As Range
Dim xOlApp As Outlook.Application
Dim xCalendarFld As Outlook.Folder
Dim xAppointmentItem As Outlook.AppointmentItem
Dim xRecurrencePattern As Outlook.RecurrencePattern
Dim xRow As Integer
On Error Resume Next
Set xWs = ThisWorkbook.ActiveSheet
Set xRng = Application.InputBox("Please select the data range (only two columns):", "Kutools for Excel", , , , , , 8)
If xRng Is Nothing Then Exit Sub
If xRng.Columns.Count <> 2 Then
  MsgBox "You can only select two columns", vbOKOnly + vbCritical, "Kutools for Excel"
  Exit Sub
End If
Set xOlApp = CreateObject("Outlook.Application")
Set xCalendarFld = xOlApp.Session.GetDefaultFolder(olFolderCalendar)
For xRow = 1 To xRng.Rows.Count
  Set xAppointmentItem = xCalendarFld.Items.Add("IPM.Appointment")
  With xAppointmentItem
    .Subject = xRng.Cells(xRow, 1) & Chr(39) & "s Birthday"
    .AllDayEvent = True
    .Start = xRng.Cells(xRow, 2)
    Set xRecurrencePattern = .GetRecurrencePattern
    xRecurrencePattern.RecurrenceType = olRecursYearly
    .Save
  End With
Next
Set xWs = Nothing
Set xCalendarFld = Nothing
Set xOlApp = Nothing
End Sub

3. अभी भी में अनुप्रयोगों के लिए माइक्रोसॉफ्ट विज़ुअल बेसिक खिड़की, क्लिक करें टूल्स > संदर्भ. बाहर निकले में सन्दर्भ - वीबीएप्रोजेक्ट संवाद बॉक्स, जाँचें माइक्रोसॉफ्ट आउटलुक 16.0 ऑब्जेक्ट लाइब्रेरी विकल्प प्रपत्र उपलब्ध संदर्भ सूची बॉक्स, स्क्रीनशॉट देखें:

4। तब दबायें OK इस डायलॉग बॉक्स को बंद करने के लिए. अब, दबाएँ F5 इस कोड को चलाने के लिए कुंजी, और एक प्रॉम्प्ट बॉक्स पॉप आउट हो जाता है, कृपया नाम और जन्मदिन कॉलम चुनें, स्क्रीनशॉट देखें:

5. और फिर, क्लिक करें OK बटन, जन्मदिन तुरंत आउटलुक कैलेंडर में आयात किए जाएंगे, परिणाम देखने के लिए आप अपना आउटलुक लॉन्च कर सकते हैं, स्क्रीनशॉट देखें:


सर्वोत्तम कार्यालय उत्पादकता उपकरण

आउटलुक के लिए कुटूल - आपके आउटलुक को सुपरचार्ज करने के लिए 100 से अधिक शक्तिशाली सुविधाएँ

🤖 एआई मेल सहायक: एआई जादू के साथ त्वरित प्रो ईमेल - प्रतिभाशाली उत्तरों के लिए एक-क्लिक, सही टोन, बहुभाषी महारत। ईमेलिंग को सहजता से रूपांतरित करें! ...

📧 ईमेल स्वचालन: कार्यालय से बाहर (POP और IMAP के लिए उपलब्ध)  /  ईमेल भेजने का शेड्यूल करें  /  ईमेल भेजते समय नियमों के अनुसार ऑटो सीसी/बीसीसी  /  स्वतः अग्रेषित (उन्नत नियम)   /  स्वतः ग्रीटिंग जोड़ें   /  बहु-प्राप्तकर्ता ईमेल को स्वचालित रूप से अलग-अलग संदेशों में विभाजित करें ...

📨 ईमेल प्रबंधन: आसानी से ईमेल याद रखें  /  विषयों और अन्य लोगों द्वारा घोटाले वाले ईमेल को ब्लॉक करें  /  डुप्लिकेट ईमेल हटाएँ  /  उन्नत खोज  /  फ़ोल्डरों को समेकित करें ...

📁 अनुलग्नक प्रोबैच सहेजें  /  बैच अलग करना  /  बैच संपीड़न  /  ऑटो सहेजें   /  ऑटो डिटैच  /  ऑटो कंप्रेस ...

🌟 इंटरफ़ेस जादू: 😊अधिक सुंदर और शानदार इमोजी   /  टैब्ड व्यू के साथ अपनी आउटलुक उत्पादकता बढ़ाएँ  /  आउटलुक को बंद करने के बजाय छोटा करें ...

???? एक-क्लिक चमत्कार: आने वाले अनुलग्नकों के साथ सभी को उत्तर दें  /   फ़िशिंग-रोधी ईमेल  /  🕘प्रेषक का समय क्षेत्र दिखाएं ...

👩🏼‍🤝‍👩🏻 संपर्क एवं कैलेंडर: बैच चयनित ईमेल से संपर्क जोड़ें  /  किसी संपर्क समूह को अलग-अलग समूहों में विभाजित करें  /  जन्मदिन अनुस्मारक हटाएँ ...

के ऊपर 100 सुविधाएँ आपके अन्वेषण की प्रतीक्षा करें! अधिक जानने के लिए यहां क्लिक करें।

 

 

Comments (5)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi Skyyang,

I'm trying to use the code to import the birthdays into a Sharepoint Events List, which is located in my outlook as calendar, but when i run and then select the calendar the recurrances briefly show up and then vanish again right away.
I did successfully import the recurrances into my personal Calendar but I need it to go to the sharepoint calendar to share it with the company :( any ideas?

kind regards
Jonas
This comment was minimized by the moderator on the site
This is very helpful, thank you! Do you have a specific VBA code for the import, but specifically goes to the "Birthday" calendar in Outlook?

Also, now that I've imported to my calendar, is there an easy way to remove all of those inputted, if needed?

Thank you!
This comment was minimized by the moderator on the site
Hello, Sam,
May be the below VBA code can do you a favor:

Sub ImportBirthdaysToCalendar()
'Updateby ExtendOffice
Dim xWs As Excel.Worksheet
Dim xRng As Range
Dim xOlApp As Outlook.Application
Dim xCalendarFld As Outlook.Folder
Dim xAppointmentItem As Outlook.AppointmentItem
Dim xRecurrencePattern As Outlook.RecurrencePattern
Dim xRow As Integer
On Error Resume Next
Set xWs = ThisWorkbook.ActiveSheet
Set xRng = Application.InputBox("Please select the data range (only two columns):", "Kutools for Excel", , , , , , 8)
If xRng Is Nothing Then Exit Sub
If xRng.Columns.Count <> 2 Then
  MsgBox "You can only select two columns", vbOKOnly + vbCritical, "Kutools for Excel"
  Exit Sub
End If
Set xOlApp = CreateObject("Outlook.Application")
'Set xCalendarFld = xOlApp.Session.GetDefaultFolder(olFolderCalendar)
Set xCalendarFld = xOlApp.Session.PickFolder
If xCalendarFld.DefaultItemType <> olAppointmentItem Then
  MsgBox "Please Select calendar folder. ", vbOKOnly + vbInformation, "Kutools for Outlook"
  Exit Sub
End If
For xRow = 1 To xRng.Rows.Count
  Set xAppointmentItem = xCalendarFld.Items.Add("IPM.Appointment")
  With xAppointmentItem
    .Subject = xRng.Cells(xRow, 1) & Chr(39) & "s Birthday"
    .AllDayEvent = True
    .Start = xRng.Cells(xRow, 2)
    Set xRecurrencePattern = .GetRecurrencePattern
    xRecurrencePattern.RecurrenceType = olRecursYearly
    .Save
  End With
Next
Set xWs = Nothing
Set xCalendarFld = Nothing
Set xOlApp = Nothing
End Sub


After running this code, you can create a new folder in the calendar, and the imported birthday will be saved in this new folder, if you need to remove the birthdays, you just need go to this folder, and delete them at once.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/2023-comment/doc-import-birthday.png
This comment was minimized by the moderator on the site
Hi Skyyang,

I'm trying to use the code to import the birthdays into a Sharepoint Events List, which is located in my outlook as calendar, but when i run and then select the calendar the recurrances briefly show up and then vanish again right away.
I did successfully import the recurrances into my personal Calendar but I need it to go to the sharepoint calendar to share it with the company :( any ideas?

kind regards
Jonas
This comment was minimized by the moderator on the site
Hi Skyyang,

I'm trying to use the code to import the birthdays into a Sharepoint Events List, which is located in my outlook as calendar, but when i run and then select the calendar the recurrances briefly show up and then vanish again right away.
I did successfully import the recurrances into my personal Calendar but I need it to go to the sharepoint calendar to share it with the company :( any ideas?

kind regards
Jonas
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations