標題:
[發問]
Excel排班表問題
[打印本頁]
作者:
JOUE
時間:
2011-11-20 09:32
標題:
Excel排班表問題
各位先進早:
有一些問題想請教一下
本表小弟主要的概念為在輪值表上KEY上我所設的代號
人員即會對應到班表上,我主要是以IF函數去完成。
問題一:是否有其他方法可以替代,怕人員一多IF函數無法負荷
問題二:總共要做31天,小弟第一天公式設好後,複製到後面的活頁上
才發現跨活頁公式貼上,抓到的跟前面的一樣,小弟目前只會用手動修改
不知是否有更簡易的方式•
以上兩點懇請新進幫個忙!!非常感謝!!
作者:
register313
時間:
2011-11-20 14:31
請再說明清楚
早正 早P 中P HPT 晚正 晚P HPT 如何區分
各職掌之代碼為何
作者:
JOUE
時間:
2011-11-21 10:16
真抱歉資料沒說清楚
1.代碼: 1=櫃台 2=樓層 7=廚房 4=領台
2.輪值表第一部分為早班 第二部分中班 第三部分晚班 不用分正兼職
只需分班段呈現即可。
再麻煩先進了!!非常感謝!!
作者:
brabus
時間:
2011-11-21 20:23
這樣的資料似乎不夠完整
排班的依據好像要說清楚吧
作者:
register313
時間:
2011-11-21 22:48
本帖最後由 register313 於 2011-11-21 22:50 編輯
1.VBA初學者,請各位大大指正
2.11月員工 工作表結構太亂 建議改嚴謹一些
Public A, D, R, S1, S2, S3, S4
Sub 排班()
For D = 1 To 31
Sheets(D + 1).Select
Range("B7:K27").Select
Selection.ClearContents
'早班
S1 = 7
S2 = 9
S3 = 11
S4 = 14
For A = 7 To 15
R = 2
Call 排班1
Next A
'中班
S1 = 7
S2 = 9
S3 = 11
S4 = 14
For A = 23 To 28
R = 3
Call 排班1
Next A
'晚班
S1 = 7
S2 = 9
S3 = 11
S4 = 14
For A = 33 To 41
R = 4
Call 排班1
Next A
Next D
End Sub
Sub 排班1()
執掌 = Sheets(1).Cells(A, D + 5)
Select Case 執掌
Case "4"
Sheets(D + 1).Cells(S1, R) = Sheets(1).Cells(A, 4)
S1 = S1 + 1
Case "7"
Sheets(D + 1).Cells(S2, R) = Sheets(1).Cells(A, 4)
S2 = S2 + 1
Case "1"
Sheets(D + 1).Cells(S3, R) = Sheets(1).Cells(A, 4)
S3 = S3 + 1
Case "2"
Sheets(D + 1).Cells(S4, R) = Sheets(1).Cells(A, 4)
S4 = S4 + 1
Case Else
End Select
End Sub
作者:
JOUE
時間:
2011-11-22 09:14
很感謝新進的回答,雖然小弟看不懂VBA
我會再努力的,謝謝!!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)