Recupero delle date di Excel nel calendario di Outlook (Microsoft Excel)
Kelly ha un foglio di lavoro in cui ha una tabella di date utilizzate come date di chiusura per inserire annunci nelle Pagine Gialle locali. Vuole importare queste date in Outlook Calendar
con un promemoria di 72 ore, ma alcune date continuano a cambiare in numeri.
Kelly si chiede come può ottenere le date di Excel in Outlook come ha bisogno.
Lavorare con Outlook è un po ‘”di livello superiore” rispetto alla normale macro di Excel perché è necessario comprendere non solo come accedere ai dati di Excel nella macro, ma anche come manipolare i dati di Outlook. Senza sapere esattamente quali dati è necessario trasferire dal foglio di lavoro all’appuntamento di Outlook, esaminiamo un breve scenario.
Supponiamo di avere un foglio di lavoro che contiene una serie di righe, ognuna delle quali rappresenta un singolo appuntamento che desideri creare. Ogni appuntamento contiene informazioni in sette colonne, come segue, da sinistra a destra:
Oggetto. * Testo che descrive l’evento / appuntamento (ad esempio, “Promemoria Pagine Gialle”)
Posizione. * Testo che descrive il luogo dell’evento, come una sala riunioni o un numero di teleconferenza (questo è facoltativo)
Data / ora di inizio. * Inserisci la data e l’ora in cui dovrebbe iniziare l’evento utilizzando un formato di data Excel standard (puoi visualizzare come preferisci)
Durata. Intero che rappresenta un numero di minuti per lo stato di occupato dell’appuntamento. Intero che rappresenta un valore opzionale che indica se l’ora deve essere visualizzata come Libero (0), Provvisorio (1), Occupato (2) o Fuori sede (3)
Tempo promemoria. * Intero che rappresenta un numero di minuti prima dell’appuntamento in cui dovrebbe apparire un promemoria (come 4320 che è il numero di minuti in 3 giorni)
Corpo. * Testo che descrive ogni dettaglio che potresti voler inserire nel corpo dell’appuntamento
Con questi dati a posto, puoi usare una macro per scorrere tutte le righe (iniziando dalla seconda riga, assumendo che la prima riga abbia intestazioni)
e crea un appuntamento per ogni riga.
Sub AddAppointments() ' Create the Outlook session Set myOutlook = CreateObject("Outlook.Application") ' Start at row 2 r = 2 Do Until Trim(Cells(r, 1).Value) = "" ' Create the AppointmentItem Set myApt = myOutlook.createitem(1) ' Set the appointment properties myApt.Subject = Cells(r, 1).Value myApt.Location = Cells(r, 2).Value myApt.Start = Cells(r, 3).Value myApt.Duration = Cells(r, 4).Value ' If Busy Status is not specified, default to 2 (Busy) If Trim(Cells(r, 5).Value) = "" Then myApt.BusyStatus = 2 Else myApt.BusyStatus = Cells(r, 5).Value End If If Cells(r, 6).Value > 0 Then myApt.ReminderSet = True myApt.ReminderMinutesBeforeStart = Cells(r, 6).Value Else myApt.ReminderSet = False End If myApt.Body = Cells(r, 7).Value myApt.Save r = r + 1 Loop End Sub
La macro continua a scorrere le righe finché la colonna Oggetto non è vuota.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (7349) si applica a Microsoft Excel 97, 2000, 2002 e 2003.