亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法與流程

文檔序號:12123873閱讀:3684來源:國知局
一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法與流程

本發(fā)明涉及生產(chǎn)調(diào)度技術(shù)領(lǐng)域,尤其涉及一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法。



背景技術(shù):

繪制甘特圖,目前基本有兩種做法:

一種是使用專用甘特圖繪制軟件,例如Microsoft project,翰文橫道圖編制系統(tǒng)等軟件。這些專用軟件雖然繪制甘特圖很方便,很直觀,尤其是Microsoft project在針對項目進(jìn)度管理時繪制的甘特圖能直觀地顯示項目進(jìn)度,但是在作業(yè)車間調(diào)度領(lǐng)域中,由于涉及龐大的數(shù)據(jù)量,遇到的問題復(fù)雜多變,致使這些專用的軟件在使用中存在著靈活性和操作性很差,適應(yīng)性不強(qiáng),給使用者帶來了諸多的不便。

另一種是采用編程軟件,例如VC++,VB等軟件,通過編程調(diào)用數(shù)據(jù)庫,然后用對話框的形式彈出生成的甘特圖。這種方法雖然可以快速處理大量的數(shù)據(jù),適應(yīng)性也比較強(qiáng),但是甘特圖一旦生成成功,將不能直接修改,可視化程度不高。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的在于提供一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法,該方法簡潔快速,易于修改,可視化程度高。其具體方法包括如下步驟:

1)設(shè)置Excel模板文件,包括設(shè)置對應(yīng)的工作表,所述工作表中至少包含相應(yīng)的表頭;

2)設(shè)置VB模板文件,包括根據(jù)所述要素設(shè)置窗體及其相關(guān)屬性,然后在窗體上添加相關(guān)控件并設(shè)置其屬性,最后編制“繪制甘特圖.vbp”程序;

3)通過加載“繪制甘特圖.vbp”程序,點擊“導(dǎo)入數(shù)據(jù)”命令按鈕,調(diào)取已設(shè)置完成的excel模板文件,獲取工件信息;

4)點擊“生成甘特圖”命令按鈕,生成所述作業(yè)車間調(diào)度甘特圖。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,所述工作表為為主、輔2個工作表,標(biāo)簽名分別設(shè)置為“工件箱、甘特圖”。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,在所述主工作表中至少設(shè)置:“工件號,工序數(shù),工序號,到達(dá)時間,可選機(jī)器集,加工時間,Cmax,開始時間,結(jié)束時間,選擇的機(jī)器”表頭。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,所述窗體添加3個命令按鈕,2個標(biāo)簽控件,2個文本框控件。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,所述甘特圖由平面坐標(biāo)和矩形塊組成,一個矩形塊的長度表示一道工序的加工時間,矩形塊的左端表示開工時間,右端表示完工時間。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,所述平面坐標(biāo)橫坐標(biāo)代表的是加工時間,其刻度線和底線是對excel工作表中單元格的行高,列寬,邊框線進(jìn)行相應(yīng)的設(shè)置而生成的??潭瘸呤歉鶕?jù)最大完工時間Cmax來選擇,然后通過對相應(yīng)單元格進(jìn)行合并居中并輸入相應(yīng)刻度值而生成的。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,所述平面坐標(biāo)縱坐標(biāo)代表的是加工機(jī)器代號,其刻度線和底線是對excel工作表中單元格的行高,列寬,邊框線進(jìn)行相應(yīng)的設(shè)置而生成的。刻度尺是根據(jù)機(jī)器數(shù)量來選擇,然后通過對相應(yīng)單元格進(jìn)行合并居中并輸入相應(yīng)機(jī)器代號而生成的。

所述一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法進(jìn)一步設(shè)計在于,所述矩形塊是通過確定工作表單元格目標(biāo)區(qū)域,然后進(jìn)行單元格合并,水平居中,垂直居中操作,最后將目標(biāo)區(qū)域單元格添加四周框線,填充相應(yīng)顏色并寫入工序信息而生成的,同一個工件的工序用相同的顏色填充。

與現(xiàn)有方法相比,本發(fā)明一種基于Excel和VB生成作業(yè)車間調(diào)度甘特圖的方法具有以下有益效果:

(1)本發(fā)明可以快速處理龐大的數(shù)據(jù),大大提高工作效率,形成模板后可重復(fù)使用,技術(shù)效果明顯,體現(xiàn)了較大的項目使用價值;

(2)本發(fā)明利用excel的良好操作性,在甘特圖生成以后,不用改變低層程序,便可以直接在excel中直接進(jìn)行調(diào)整和修改,靈活性強(qiáng),可視化程度高;

(3)本發(fā)明可以實現(xiàn)調(diào)度數(shù)據(jù)與甘特圖的共同關(guān)聯(lián)存儲。

附圖說明

圖1是Excel模板文件中主、輔工作表的設(shè)計示例圖。

圖2是本實施例的部分輸入內(nèi)容。

圖3是VB窗體模板。

圖4-1到圖4-2是導(dǎo)入數(shù)據(jù)的核心代碼。

圖5是導(dǎo)入數(shù)據(jù)成功后的窗體。

圖6-1到圖6-3是生成甘特圖的核心代碼。

圖7是本實施例的調(diào)度結(jié)果甘特圖。

下面結(jié)合附圖及實施例對本發(fā)明作進(jìn)一步的說明。

1.設(shè)置excel模板文件

1.1 新建工作簿

在新建的工作簿中,分別建立工作表標(biāo)簽名稱為“工件箱”的主工作表和工作表標(biāo)簽名稱為“甘特圖”的輔工作表。主工作表應(yīng)包含表頭用來存儲工件加工信息。例如:“工件號,工序數(shù),工序號,到達(dá)時間,可選機(jī)器集,加工時間,Cmax,開始時間,結(jié)束時間,選擇的機(jī)器”表頭。請參見圖1所示。

1.2 各單元格輸入內(nèi)容

以20個工件,每個工件10道工序,10臺加工機(jī)器為例,主工作表中上述輸入?yún)^(qū)的對應(yīng)單元格的部分輸入內(nèi)容請參見圖2所示。

2.設(shè)置VB模板文件

2.1 新建VB模板文件并設(shè)定窗體及其屬性,

新建VB模板文件,在該文件中設(shè)置form1.caption=“生成甘特圖”。

2.2 添加控件并設(shè)置相關(guān)屬性

首先添加2個命令按鈕,其caption屬性分別設(shè)置為“導(dǎo)入數(shù)據(jù)”,“甘特圖”;然后添加倆個標(biāo)簽控件,其caption屬性分別設(shè)置為“JobNum”,“MachNum”;最后添加倆個文本框控件,其text屬性均設(shè)置為“ ”;請參見圖3所示。

2.3 編寫“生成甘特圖.vbp”程序

編寫“生成甘特圖.vbp”程序,編寫完成并調(diào)試成功后,以“生成甘特圖.vbp”程序存盤。

3.加載程序,導(dǎo)入數(shù)據(jù),獲取工件信息

加載“生成甘特圖.vbp”程序,點擊導(dǎo)入數(shù)據(jù)命令按鈕,選擇步驟1中設(shè)置好的excel模板文件,獲取工件信息。該程序的核心代碼如圖4-1~4-2所示,導(dǎo)入數(shù)據(jù)成功后如圖5所示。

4.生成甘特圖

首先生成平面坐標(biāo),其具體步驟如下:

Step1.令excel中標(biāo)簽名為“工件箱”的工作表G2單元格的值為最大完工時間Cmax;

Step2.設(shè)置“甘特圖”工作表的第一列列寬為3,然后選定該工作表指定區(qū)域(第二列到第Cmax+1列)的列寬為100/Cmax;

Step3.設(shè)置工作表的第二行、第三行以及第MachNum*2+5行和第MachNum*2+6行的行高為5;

Step4.構(gòu)建橫坐標(biāo):選定工作表指定區(qū)域(第MachNum*2+6行第二列到MachNum*2+6行第Cmax+1列的所有單元格),設(shè)置其下框線的線型為實線;設(shè)置橫坐標(biāo)的刻度尺(包括刻度值和最小刻度單位線),例如:由于該實例的Cmax比較大,設(shè)置刻度值為50,最小刻度單位為10,當(dāng)?shù)贛achNum*2+6行的列數(shù)(假設(shè)為第i列)為10的整數(shù)倍時,設(shè)置第i+1列的右框線為實線,當(dāng)?shù)贛achNum*2+5行的列數(shù)(假設(shè)為第j列)為50的整數(shù)倍時,設(shè)置第j+1列的右框線為實線,對應(yīng)第MachNum*2+7行第j+1列的單元格數(shù)值為j,然后把該單元格相鄰的前23個單元格和后26個單元格合并居中;

Step5.構(gòu)建縱坐標(biāo):選定工作表指定區(qū)域(第四行第一列到第MachNum*2+6行第一列的所有單元格),設(shè)置其右框線的線型為實線;設(shè)置縱坐標(biāo)的刻度,縱坐標(biāo)代表的是工件加工的機(jī)器代號,在第五行第一列的單元格中輸入M1,代表機(jī)器1,然后以該單元格為基礎(chǔ),在第一列中每隔一個單元格依此輸入M2,M3……直到M&MachNum。

然后生成矩形塊,具體步驟如下:

Step1.把每個工件的每道工序根據(jù)選擇的機(jī)器代號和開始時間放入相應(yīng)的單元格,例如:(1,1),代表第一個工件的第一道工序,它的開始時間是9,選擇的機(jī)器號是9,那么它所處的位置就在工作表的第9*2+3行,第9+2列所對應(yīng)的單元格;

Step2.根據(jù)工序的開始時間和結(jié)束時間,確定每道工序的時間區(qū)域,然后將該區(qū)域的單元格合并居中,并將四周邊框線設(shè)置為實線;

Step3.給Step2中確定的單元格區(qū)域填充顏色,同一工件的所有工序用相同的顏色填充。

最后,添加結(jié)束標(biāo)志線,并標(biāo)注最大完工時間,其具體步驟如下:

Step1.選定工作表指定區(qū)域(第四行第Cmax+1列到第MachNum*2+6行第Cmax+1列的所有單元格),設(shè)置其右框線的線型為實線;

Step2.在第四行,第Cmax+1列單元格輸入該實例最大完工時間Cmax;

Step3.選定第四行的第(Cmax-50)列到第(Cmax+1)列,然后進(jìn)行合并居中。

該程序的核心代碼如圖6-1~6-3所示,生成完甘特圖如圖7所示。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1