EXCEL 表單問題

小弟是新手 完全由網路學習而來
EXCEL 表單問題

此表單可由上方的年月來改變日及星期 包含出勤及休假

現在的問題是 要在下方的方塊打勾 要取消上方當天的出勤

另外一個問題是按鈕 在巨集內的VBA有輸入 Worksheets("Sheet1").PrintPreview
無法儲存 但是可以使用
可是EXCEL重新開啟 按鈕就無效了

EXCEL2007版
2022-08-15 15:57 發佈
文章關鍵字 excel 表單問題
一個打勾 3個都不出勤嗎?
如果是的話
可以用IF 判斷 是否有勾選

=IF(AND(E13<>"V",WEEKDAY(E4,2)<6),"出勤","")


HCH
HCH 樓主

這個方式 會進入循環 謝謝你的幫助

2022-08-16 15:23
HCH wrote:
小弟是新手 完全由網...(恕刪)

兄弟,上網學習都做到可以由上方的年月來改變日及星期包含出勤及休假,應該有能力做出你要的功能才對

HCH wrote: 要在下方的方塊打勾 要取消上方當天的出勤

第一個問題,下方的方塊我猜應該是CheckBox,總共有31個分別代表1號~31號,可以用下面這個程式去修改達到你要的功能,我只寫2個出來,後面的在自己加。
Private Sub CheckBox1_Change()
If Range("C4") = "週六" Or Range("C4") = "週日" Then
If CheckBox1.Value = True Then
Range("C5:C7") = "出勤"
Else
Range("C5:C7") = ""
End If
Else
If CheckBox1.Value = True Then
Range("C5:C7") = ""
Else
Range("C5:C7") = "出勤"
End If
End If
End Sub
Private Sub CheckBox2_Change()
If Range("D4") = "週六" Or Range("D4") = "週日" Then
If CheckBox1.Value = True Then
Range("D5:D7") = "出勤"
Else
Range("D5:D7") = ""
End If
Else
If CheckBox1.Value = True Then
Range("D5:D7") = ""
Else
Range("D5:D7") = "出勤"
End If
End If
End Sub


HCH wrote: 按鈕 在巨集內的VBA有輸入 Worksheets("Sheet1").PrintPreview
無法儲存 但是可以使用 可是EXCEL重新開啟 按鈕就無效了

第二個問題,會不會是開啟Excel跳出啟用巨集的時候你沒啟用?
我個人做法是
AJ欄是國定假日。
AK欄是補班日。
C5:AG7用公式算出那些日子要上班,那些日子不上班。








再用條件式格式設定標註不上班日期的紅底。




調好列印範圍及縮放比例就可以了。





點「檔案>列印」就可預覽。

錦色如月,子耀光芒。
HCH
HCH 樓主

太複雜了 而且我要5年的的資料 每一筆假日都要輸入 太麻煩了 公司沒有在打卡 這個資料是要給最上面的人來檢查用的 總之謝謝你的幫助

2022-08-16 15:30
TO 小小尉
我將我製作的出勤表上傳在這免空內
https://www.sendspace.com/file/07x0l6
小弟我依照你的VB碼輸入 (直接貼)
有一問題 我改變月份 在週六或日
會變成出勤 BOX要多按幾次 才會正常回來

原本巨集全開都還是不行 結果信任位置設定好就可以使用了

謝謝你的幫助
HCH wrote:
TO 小小尉我將我製(恕刪)

因為你的表是用公式,用我的VBA碼會把你的公式改掉...如果是用公式的話有兩個建議:
1.用3樓大大方式處理。
2.如果你還是想用方塊打勾的方式,可以將CheckBox改為核取方塊再用公式去判斷(還是類似3樓大大的方式)。

我這邊有一個第二種處理的方式改出來的版本:
https://mega.nz/file/oSMCmShS#wOzJRyY72MOLjKRH7BedHfjH2fprG6SVXG19aeLoPFw

試試看吧
HCH
HCH 樓主

VB碼只要一條 厲害 非常的佩服 感謝小小尉的幫助 謝謝

2022-08-17 10:09
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?