Excel VBA之函數(shù)篇-3.8上萬條數(shù)據(jù)按照季度統(tǒng)計痪署?季度是什么東東?

前景提要

今天周末兄旬,心里一百個不愿意狼犯,但是還是要起床上班,在這里羨慕下周末雙休的童鞋领铐,然后周末并不會太忙悯森,也沒什么事情,一般情況下绪撵,周末領(lǐng)導也不會出現(xiàn)的瓢姻,所以我忙完工作之后,就開始看視頻了音诈,可能是太投入幻碱,居然領(lǐng)導進來也沒有感覺到,被領(lǐng)導抓個正著细溅,當時那叫一個尷尬褥傍,領(lǐng)導可能覺得我太閑,分配給我一個任務喇聊,讓我把公司去年每季度的銷售和今年第一季度的銷售最下對比恍风,然后把數(shù)據(jù)分給他,我當場答應了(不是承疲,我好像沒得選傲诟)

轉(zhuǎn)過頭來,我忽然發(fā)現(xiàn)燕鸽,季度這個東西我好像只在電視上看新聞報道的時候看到過這個東西兄世,對于一個非財務方面的小白,你讓我去做季度分析啊研,我連季度怎么劃分都快忘記了御滩,我怎么分析啊,不過忽然想起來党远,再VBA中有一個函數(shù)好像就是和季度有關(guān)的削解,看來運氣不錯,有救了沟娱。

函數(shù)說明

還好自己的機型還算是不錯氛驮,季度函數(shù)還真的是存在的,他就是DatePart()济似,具體的格式我已經(jīng)忘記了矫废,畢竟季度這個概念比較少用盏缤,我嘗試寫了下代碼,他的格式應該是這樣的DatePart("q",date),簡單的說蓖扑,我們只需要提供一個參數(shù)唉铜,就是第一個參數(shù)date,剩下的都是固定搭配律杠,直接套用就可以得到標準的季度分配了潭流,上個代碼我們來演示下效果。

上代碼

根據(jù)我現(xiàn)在所處的這樣的騎虎難下的場景柜去,相信日常工作中灰嫉,需要用到季度的時候,應該也是在年度總結(jié)或者季度總結(jié)的時候吧诡蜓,那個時候面對的肯定不是我們之前舉例中的那么幾個數(shù)字了熬甫,肯定是成千上萬行數(shù)據(jù)了,我現(xiàn)在手上的這個數(shù)據(jù)蔓罚。。瞻颂。我看看60053條數(shù)據(jù)豺谈!這樣的數(shù)據(jù),如果我們還是繼續(xù)使用普通的遍歷循環(huán)的方法的話贡这,效率很大茬末,可能電腦也會卡住的,這里我們使用數(shù)組盖矫,不要問我為什么丽惭,大數(shù)據(jù)時代,excel首選數(shù)組方法辈双,高效责掏!

為了展示測試效果,我這次虛擬構(gòu)造的測試數(shù)據(jù)有1048574行湃望,已經(jīng)差不多達到了excel 2013的極限了换衬,我們來測試下需要使用多少時間,當然可能也會收到電腦配置的影響证芭,數(shù)據(jù)多少有一些出入瞳浦,當不會太大

Sub test()

Dim l&, arr, arr1(), i&, k&

T1 = Timer

l = Cells(Rows.Count, 1).End(xlUp).Row

arr = Range(Cells(1, 1), Cells(l, 1))

k = 0

For i = 1 To UBound(arr)

   k = k + 1

   ReDim Preserve arr1(1 To 1, 1 To k)

   arr1(1, k) = "第" & DatePart("q", arr(i, 1)) & "季度"

Next i

Range(Cells(1, 2), Cells(l, 2)) = arr1

T = Timer - T1

MsgBox "程序總共耗時 " & T & " 秒"

End Sub

結(jié)果出來了,一行數(shù)據(jù)總共用了不到1分鐘就出來結(jié)果了废士。成功的轉(zhuǎn)化成為了我們想要的季度的形式叫潦,后面就可以操作數(shù)據(jù)分析,透視表官硝,圖標各種操作了矗蕊。

image.png

代碼解析

因為牽扯到大數(shù)據(jù)四敞,我們今天這里使用了數(shù)組,數(shù)組大家可能是第一次接觸拔妥,他在excel中經(jīng)常用來處理大數(shù)據(jù)的忿危,數(shù)組是將內(nèi)容存儲再內(nèi)存中,以此來提高計算的效率的没龙,所以他的處理速度很快铺厨,在大數(shù)據(jù)時代,大家要開始慢慢的學習去使用數(shù)組方法硬纤,因為數(shù)組牽扯的方法和知識點解滓,比較的多,這里暫時先不涉及筝家,我們后面會細細的鋪展開洼裤。

T1 = Timer

*******

T = Timer - T1

MsgBox "程序總共耗時 " & T & " 秒"

這一段代碼主要是用來計算程序執(zhí)行的時間的,對程序本身并無任何作用溪王,我們可以先忽略腮鞍,需要的時候也可以直接套用。

l = Cells(Rows.Count, 1).End(xlUp).Row

獲取非空單元格的最大下標莹菱,這個我們在之前的分享中移国,已經(jīng)介紹過了,在實際使用中道伟,我們只需要更改下數(shù)字1為對應的行就可以了迹缀。

之后就是數(shù)組的使用方法了,這里我們先跳過蜜徽,后面會詳細說明祝懂,這里我們先記住這種方法,需要的時候直接套用即可拘鞋,更改下arr所對應的數(shù)據(jù)源即可砚蓬。

arr1(1, k) = "第" & DatePart("q", arr(i, 1)) & "季度"

這個就是我們今天的重點了,季度函數(shù)的使用掐禁,最開始的時候我們已經(jīng)講述了使用方法怜械,我們只需要更換第二參數(shù)為指定的日期就可以了。 這里我們是將對應的第一行的日期拿過來得到對應的季度的傅事。

Range(Cells(1, 2), Cells(l, 2)) = arr1

這句代碼的作用缕允,就是將我們得到的新的數(shù)組一次性填入第二列的操作,大家也可以先做了解蹭越,需要的時候也可以直接套用障本,這里改成我們需要的列就好。

想學習更多關(guān)于Excel VBA的知識,可關(guān)注我的公眾號:Excel和VBA
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末驾霜,一起剝皮案震驚了整個濱河市案训,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌粪糙,老刑警劉巖强霎,帶你破解...
    沈念sama閱讀 222,000評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蓉冈,居然都是意外死亡城舞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評論 3 399
  • 文/潘曉璐 我一進店門寞酿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來家夺,“玉大人,你說我怎么就攤上這事伐弹±觯” “怎么了?”我有些...
    開封第一講書人閱讀 168,561評論 0 360
  • 文/不壞的土叔 我叫張陵惨好,是天一觀的道長煌茴。 經(jīng)常有香客問我,道長昧狮,這世上最難降的妖魔是什么景馁? 我笑而不...
    開封第一講書人閱讀 59,782評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮逗鸣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘绰精。我一直安慰自己撒璧,他們只是感情好,可當我...
    茶點故事閱讀 68,798評論 6 397
  • 文/花漫 我一把揭開白布笨使。 她就那樣靜靜地躺著卿樱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪硫椰。 梳的紋絲不亂的頭發(fā)上繁调,一...
    開封第一講書人閱讀 52,394評論 1 310
  • 那天,我揣著相機與錄音靶草,去河邊找鬼蹄胰。 笑死,一個胖子當著我的面吹牛奕翔,可吹牛的內(nèi)容都是我干的裕寨。 我是一名探鬼主播,決...
    沈念sama閱讀 40,952評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼宾袜!你這毒婦竟也來了捻艳?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,852評論 0 276
  • 序言:老撾萬榮一對情侶失蹤庆猫,失蹤者是張志新(化名)和其女友劉穎认轨,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體月培,經(jīng)...
    沈念sama閱讀 46,409評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡嘁字,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,483評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了节视。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拳锚。...
    茶點故事閱讀 40,615評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖寻行,靈堂內(nèi)的尸體忽然破棺而出霍掺,到底是詐尸還是另有隱情,我是刑警寧澤拌蜘,帶...
    沈念sama閱讀 36,303評論 5 350
  • 正文 年R本政府宣布杆烁,位于F島的核電站,受9級特大地震影響简卧,放射性物質(zhì)發(fā)生泄漏兔魂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,979評論 3 334
  • 文/蒙蒙 一举娩、第九天 我趴在偏房一處隱蔽的房頂上張望析校。 院中可真熱鬧,春花似錦铜涉、人聲如沸智玻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽吊奢。三九已至,卻和暖如春纹烹,著一層夾襖步出監(jiān)牢的瞬間页滚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評論 1 272
  • 我被黑心中介騙來泰國打工铺呵, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留裹驰,地道東北人。 一個月前我還...
    沈念sama閱讀 49,041評論 3 377
  • 正文 我出身青樓陪蜻,卻偏偏與公主長得像邦马,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,630評論 2 359

推薦閱讀更多精彩內(nèi)容