Excel VBA之日期篇 4.2重要日程提醒 讓你不再手忙腳亂

2021-01-11 Excel和VBA

前景提要

昨天和大家分享了計算日期之間的差距的方法,相信能夠在一定的程度上幫助廣大HR工作者在時間計算上面的問題,今天我們繼續前進,日期之間的差距實際上就是日期之間的減法,那麼有減法自然會有加法了,今天我們就來說說日期之間的加法,日期之間的加法又是什麼呢?

比方說3天之後你要準備一個重要的事情要做,或者是重要的會議,或者是一次浪漫的巴黎旅行(PS:最近疫情嚴重,還是不要去外國比較好),或者和伴侶的一次重要約會,這些都是需要提前做好準備的事情,但是你平時工作比較忙,你可能就會忘記要準備這些事情,到真正要去開會,旅行的時候,你就會手忙腳亂的,毫無頭緒,今天就和大家分享一個簡易的excel事件提醒功能,這樣就可以提前通知你做好準備,從而不再手忙腳亂了,那麼三天之後的日期怎麼算呢,你現在肯定能夠算出來,因為很簡單,如果我拉長時間,13,16你就不一定那麼好算, 就算你算得出來,肯定到時候你也忘記了。

場景說明

說到提醒功能,很多的人都會想到各種各樣的手機APP軟體,這些軟體雖然功能很強大,但是手機並不是日常工作中的必需品,你不可能在手機上處理數據,處理表格,處理作圖甚至開業務,而excel又是我們日常工作中常用的軟體,所以如果可以在excel中實現提醒的功能的話,效果絕對是更加的完美,我們一起來看看如何實現這個excel事件提醒功能吧

我們假設3天之後,公司要組織去法國巴黎旅遊,出國旅遊的話,可能要準備很多的東西,諸如護照,外幣等東西,如果不提前準備的話,去到外國就比較的麻煩,所以我們製作一個excel的提醒功能,讓excel提前1天提醒我們要準備東西。

代碼如下:

Private Sub Workbook_Open()

Dim Todayd

Todayd = DateAdd("d", -2, Now())

TargetD = DateAdd("d", 2, Todayd)

If Format(TargetD, "yyyy/m/d") = #4/16/2019# Then

MsgBox "要記得準備去巴黎旅行的東西啊!"

End If

End Sub

場景說明

今天的代碼的起手式和之前的代碼有一些不同,因為我們今天想要實現的效果應該是在我們打開一個常用的工作薄的時候,就會提醒我們,想要實現工作薄一打開就提醒的功能,需要在工作薄的打開事件中來實現,不過工作薄的事件我們還沒有分享過,所以今天暫時先不細說這個部分,我們只需要記住這段代碼應該寫在那裡,寫在哪裡呢?看下面的圖

寫在其他的地方是沒有這樣的效果的,然後我們來解析下代碼

今天我們要學的一個新知識就是dateadd這個方法,它的主要的作用就是幫助我們進行日期的加法計算的,比方說我想要得到2天之前的日期,

Todayd = DateAdd("d", -2, Now())

反之如果我想要得到2天之後的日期呢

TargetD = DateAdd("d", 2, Todayd)

都很簡單,DateAdd他需要提供三個參數,第一個參數就是時間的單位,年月日周這樣的,在上節課我們已經分享了相關的常用寫法,這裡就不講述了,然後第二參數就是number類型,數字,你想要得到時間的加法,那就是正數,想要得到時間的減法,那就是負數,最後一個參數就是日期,即計算的日期,

因為我們想要構造的是日期為今天的日期就提醒我們,為了展示的方法,所以我們假設開始時間是兩天前,兩天前的日期如何求,上面已經寫了,然後兩天的前的日期加上2,就是今天的日期,得到了今天的日期之後,就可以提醒了,但是這裡為了能夠讓大家清楚的知道時間的準確,我們這裡在增加一個判斷,得到了最終的時間日期之後,我們做一個判斷,判斷下是不是今天的日期。

If Format(TargetD, "yyyy/m/d") = #4/16/2019# Then

如果是今天的日期,就可以彈窗提示我們,應該要準備去巴黎旅行的東西了。

這裡可能有童鞋要問format這段話的意思了,在之前函數篇我們已經分享過了,就是轉化日期格式的方法,這也驗證了小編之前說的,所有的程序都是由一個個的函數打造出來的,大家一定要好好學習函數篇的內容,實在忘記了可以翻下之前的文章。

我們來一起調試下,這樣大家能夠更清楚效果

這裡為了演示的方便,我將所有的時間都輸入了,這樣大家能夠看到更加清楚。最終效果就是當達到了設定的日期之後,就會彈窗提醒我們應該做什麼事情了。

總結

今天主要分享了一個excel時間提醒的小功能,主要用到的方法就是dateadd方法,同時也用到了excel的事件功能,事件功能我們後面會慢慢的接觸到,今天主要是為了演示方面,讓功能的效果大家更好理解,所以就提前涉及下這個時間功能,有了這個日期提醒功能之後,相信大家在日後比方說碰到重要的會議,截稿日期之類的事情的時候,就不會再忘記了,提前準備好自己要做的事情,杜絕毫無意義的加班,避免996的悲劇的出現。

相關焦點

  • excel VBA是什麼?VBA編程入門教程
    本篇將介紹excel vba是什麼?vba編程入門教程,有興趣的朋友可以了解一下!一、excel vba是什麼?VBA的英文全稱是Visual Basic for Applications,是一門標準的宏語言。VBA語言不能單獨運行,只能被office軟體(如:Word、Excel等)所調用。
  • Excel VBA 不可一世的宏中,基本數據構成你知道多少
    在上一期我們說到VBA的基本組織結構,那麼我們今天就來說說組成這些VBA代碼的磚瓦是由哪幾部分構成的,也就是說vba的處理數據的磚瓦。下面我們說的有3個方面的知識點:常量變量字符串日期1.以上這個4點我們慢慢給你講講,我們先來說說常量,常量這個詞很好理解,就是在程序執行完成或者還沒執行,他都是一成不變的值。
  • Excel vba 利用定義名稱實現用戶登錄功能
    如何用定義名稱來對用戶進行管理其實,名稱以隱式狀態存儲,一般情況下也不會去檢查是否存在,特別是一些剛學習excel的人來說,對此也並不十分了解。所以,在隱蔽性來說,有一點點可取之處。以前經常破解word文檔密碼,感覺那種密碼真的是不太有效,通過製作vba編程,也達不到想要的保密狀態,所以,這個功能也只能是象徵性實現一下登錄的效果。
  • Excel VBA之日期篇 4.6 輕鬆獲得月末日期 財務結算無壓力
    前景提要臨近年關,又來到了每年公司人員流動最大的時候了,尤其是今年受到疫情的影響,很多人都打算提前回家,害怕晚走就不能回家了,但是工作還是要有人做的,那麼公司就不得不請臨時工來幫忙了,臨時工之所謂臨時工,因為都是臨時的,說走就走,來的快走的也快,財務核算全年財務數據的時候就很頭疼了,尤其是月末日期的確定,不方,今天我們來繼續嘗試用VBA獲得準確的月末日期
  • WPS教程:excel新手入門VBA功能使用介紹
    Excel教學:今天和大家分享一下excel中vba的使用方法入門,相信很多使用該軟體的朋友們對此都很感興趣,下面就和大家來分享一下,希望可以幫助到大家。工具/原料電腦:組裝臺式機系統:windows 10專業版版本:WPS Office 2019 PC版方法/步驟1.首先,我要知道商品的單價是12.5,在D1單元格輸入【商品單價】,在D2單元格輸入12.52.接著我們打開vb界面,在常用工具欄上執行:開發工具--visual basic。
  • 你天天用的excel也可以用來畫畫,這個工具3分鐘搞定!
    最近小妞迷上了一位77歲日本老大爺,他從畫將近20年,讓我敬佩的是他畫畫的工具,居然是我們每天都在用的excel,這幾天小妞打算寫一篇老大爺的傳記給大家學習一下滴,記得隨時過來看看啦。今天就針對excel主題,告訴大家這個用excel就能畫畫的技能,這個說出都很有面兒有木有。
  • Excel實現信息管理系統之數據錄入界面設計步驟詳解
    本身excel就是一款功能強大的數據信息管理和分析軟體,我們如果在它的基礎上在設計信息管理的功能感覺有點多此一舉。但是大家仔細想想,我們在excel錄入數據時,很多時候都是在單元格中直接輸入,亦或者使用excel記錄單錄入數據,然後再進行數據處理,這種方式對於大眾來講非常簡單快捷。但是如果我們處理的數據量大,錄入數據時有若干列,或者多人錄入時,這樣直接輸入真的會很便捷嗎?
  • excel函數公式應用:時間日期提取公式匯總,你用過哪些?
    如何快速計算某日期是年內第幾周、星期幾,以及日期之間間隔的天數、月數、年數、小時數、分鐘數?如何快速補全指定月份日期,合併日期和時間?今天老菜鳥針對上述在日常工作中經常會遇到的問題,總結了20個常用的關於日期和時間的公式,趕緊來看看吧!學習更多技巧,請收藏關注部落窩教育excel圖文教程。
  • excel中2000行數據以行排序,你需要多長時間
    Hello,大家好,今天跟大家分享下我們如何使用錄製宏批量的按照行來對數據排序,這個之前發過視頻,但是很多粉絲表示沒看懂,今天就來詳細的介紹下這種方法一、宏是什麼宏本質上就是我們所說的vba代碼,錄製宏就是將我們的操作記錄下來,將其編譯為vba代碼,當我下次需要重複操作的時候只需要運行宏
  • Excel VBA之日期篇 4.4合同到期時間計算 HR必備方法
    前景提要今天我們繼續來分享一些日期方面的問題,今天公司的HR過來找我,向我請教有沒有什麼好的方法能夠快速的計算出合同到期的時間,他說之前我雖然分享過一篇關於計算員工在職時間方面的文章,他也看過,但是他覺得並不適合他的工作場景,因為那個只能計算兩個時間之間差距,現在他反而是有了合同的時效
  • Excel VBA之函數篇-3.5時間錄入無煩惱
    在我們平時的工作中,很多時候都需要登記當天的日期,還是我們上次講過的場景,商場錄入進出的銷售數據的時候,為了方便月底的數據統計,很多的時候基本上都是將一整個月的數據放在一個表格中的,那麼我怎麼知道我每天的銷售數據呢?
  • 四句話讓你搞清楚,Excel中函數與Excel VBA中函數不同
    可以用以下語句,以下代碼就是顯示1,2,3的和是多少,PrivateSub CommandButton5_Click()MsgBoxApplication.WorksheetFunction.Sum(1, 2, 3)EndSub當然也可以省略中間的
  • 最常用日期函數匯總excel函數大全收藏篇
    在我們的實際工作中,經常需要用到日期函數。日期函數那麼多,你還只會用函數TODAY嗎?那你就OUT了。今天一起來看下常用日期函數的用法! 1、DATE 函數DATE:返回在日期時間代碼中代表日期的數字。
  • 用excel製作文件管理器,所有版本皆可使用
    Hello,大家好,之前跟大家分享了使用excel中的power query功能製作一個文件管理器,但是很多分析反應自己的excel版本不夠高,無法使用,今天就跟大家分享如何使用宏表函數製作文件管理器,他也是可以實現文件刷新的,這個的操作也不難,下面就讓我們來看下他是如何設置的一、什麼是宏表函數以及FILES函數
  • 共享工作薄竟能快速匯總多個excel文件,這個操作你見過嗎
    今天就跟大家分享一種簡單數據匯總的方法,不用vba,也不用power query,只需要簡單的設置,設置完成後,點點滑鼠excel就會幫你自動匯總數據,下面就讓我們來一起操作下吧一、設置模板,添加功能1.設置模板首先我們需要自己設置一個數據模板來供人填寫,模板如何設置需要根據自己想要匯總的項目來設置
  • pdf轉excel不再麻煩,讓它充當你的辦公小助手
    pdf轉excel的意義收到pdf格式文件之後,會發現需要回傳的表格也是不可改動的,但是自己重新製作的話太過於麻煩,如果時間很緊的話更加是手忙腳亂,所以能夠快速pdf轉excel就顯得非常重要,可是並不是所有文件格式轉換器都是好用並且免費的,但是小編今天要給大家推薦的就是一款非常不錯的迅捷
  • excel表格如何實現倒計時提醒?用datedif函數,實現自動更新計算
    在excel工作裡,倒計時提醒是一個非常實用的效果。比如:員工生日提醒、產品保質期到期提醒、合同到期提醒、項目到期提醒等等。現在,我們通過員工生日倒計時提醒的案例,來掌握datedif函數,實現這個效果。如圖中案例,已知員工的生日,現在要計算員工的年齡、7天內生日提醒。要計算這兩個信息,就需要知道每一天的實時日期。
  • 用EXCEL製作一個簡單的五子棋遊戲
    今天,我們教愛學習的小朋友用excel製作一款非常簡單的雙人五子棋遊戲。其中涉及到的知識有:excel基礎操作vba基礎知識首先看看最終效果圖:2:根據需求,我們要製作3個按鈕。這3個按鈕分別是:重置,反悔,放置棋子。因為放置棋子的點擊頻率最高,所以我們將它縮放得最大,位置也最好點擊。其它倆個按鈕並排放上即可。放置按鈕需要通過開發工具模塊中的》插入表單控制項》按鈕 來放置按鈕。這裡有些小朋友就會發現自己菜單欄上並沒有開發工具模塊。
  • Excel VBA操作電子表格兩大重要屬性詳解
    Excel VBA編程中,VBA和excel都給我們內置了很多豐富的功能,但是看著這些函數,很多人相信都很頭大,無從下手,在網際網路上搜索了一堆解決方案,無賴看不懂,畢竟很多編程知識的專業的程式設計師才能快速理解。因此對於excel小白來講,想實現辦公自動化就變得天方夜譚。
  • Excel表格如何以工作日填充日期?
    在Excel中,日期如何以工作日加以填充?首先在第一個單元格輸入日期(當前日期的快捷鍵Ctrl+;),之後向下填充,隨後點擊單元格右下角的自動填充選項,最後選中【以工作日填充】即可。如何在excel中快速填充工作日日期?現在你知道了嗎?若有什麼問題,可以在留言討論哦。