Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Otvorte aplikáciu Microsoft Excel . Kliknite na menu " Nástroje " , prejdite na " makro " na a kliknite na " editore jazyka Visual Basic " , ak používate aplikáciu Excel 2003 alebo starší. Pre Excel 2007/2010 , kliknite na záložku " Developer " a potom kliknite na " Visual Basic " . Ak nevidíte kartu " Vývojár " , kliknite na tlačidlo " Office " a potom " Možnosti programu Excel . " Na prvej obrazovke , kliknite na zaškrtávacie políčko vedľa " Zobraziť kartu Vývojár na páse kariet " a potom kliknite na tlačidlo " OK " . Záložka " Vývojár " by mal ukázať sa .
2
Kliknite na " Vložiť " menu v editore jazyka Visual Basic . Kliknite na " modul " pre spustenie nového kódu modulu
3
Skopírujte prvú časť nasledujúci kód do nového modulu : .
" Sub CalendarMaker ( )
' Odomknúť list , ak mal predchádzajúce kalendár , aby sa zabránilo chybe
ActiveSheet.Protect DrawingObjects : . = False , Obsah : = False , _
Scenáre : = False
" Zabrániť obrazovka bliká pri kreslení kalendár .
Application.ScreenUpdating = False
" Nastaviť chyba zachytenie .
On Error GoTo MyErrorTrap
" clear oblasť a1 : . g14 vrátane akéhokoľvek predchádzajúceho kalendárneho
rozsah . ( " a1 : g14 " ) clear
' Použiť InputBox , aby sa požadovaný mesiac a rok a nastaviť premennú klipart
" MyInput .
MyInput = InputBox ( " Zadajte mesiac a rok pre kalendár " )
" Povoliť užívateľovi ukončiť makro s Storno InputBox .
Ak MyInput = " " Potom Exit Sub
" Získať dáta hodnotu na začiatku vstupného mesiaca .
startdate = DateValue ( MyInput )
" Skontrolujte , či je platný dátum , ale prvý mesiaca
" - ak áno , obnoviť startdate k prvému dňu mesiaca
Ak Day ( startdate ) < > 1 potom
startdate = DateValue ( měsíc. ( startdate ) & " /1 /" & _
rok ( startdate ) )
End If
" Pripraviť článok pre mesiac a rok ako plne vysvetlené .
Range ( " a1 " ) NumberFormat = " mmmm rrrr "
" Center mesiac a rok štítok cez A1 : G1 s vhodným
" . veľkosti, výšky a tučné písmo .
S rozsahom ... ( " a1 : g1 " )
HorizontalAlignment = xlCenterAcrossSelection
VerticalAlignment = xlCenter
Font.Size = 18 < br .. >
Font.Bold = TRUE
RowHeight = 35
End With
" Pripravte a2 : g2 za deň týždeň štítkov so strediacim , veľkosti , < .. ( " : g2 a2 " )
ColumnWidth = 11
VerticalAlignment = xlCenter
< p
s rozsahom br >
" výška a tučné písmo . > . HorizontalAlignment = xlCenter
. VerticalAlignment = xlCenter
. Orientácia = xlHorizontal
. Font.Size = 12
. Font.Bold = TRUE < . br >
RowHeight = 20
End With
" Dajte dni v týždni v A2 : . g2
Range ( " A2 " ) = " Nedeľa "
Range ( " B2 " ) = " pondelok "
Range ( " c2 " ) = " Utorok "
Range ( " d2 " ) = " stredu "
Range ( " E2 " ) = " Vo štvrtok "
Range ( " f2 " ) = " piatok "
Range ( " g2 " ) = " Saturday "
" Pripravte a3 : g7 pre dáta s ľavým /top zarovnanie , veľkosť , výška
. " a tučné písmo
s rozsahom . ( " a3 : g8 " )
HorizontalAlignment = xlRight
. VerticalAlignment = xlTop
. Font.Size = 18
. Font.Bold = TRUE
. RowHeight = 21
End With
" Daj vložené mesiac a rok plne hláskovať do " A1 " .
Range ( " a1 " ) . Value = Application.Text ( MyInput , " mmmm rrrr " )
" Nastaviť premennú a dostať sa ktorý deň v týždni sa začína mesiac .
denVtýdnu = Weekday ( startdate )
" Nastavenie premennej určiť rok a mesiac ako samostatný < " premenné .
CurYear = Year ( startdate )
CurMonth = mesiac ( startdate )
" br >
Nastavte premennú a vypočíta prvý deň nasledujúceho mesiaca .
FinalDay = DateSerial ( CurYear , CurMonth + 1 , 1 )
" namiesto " 1 " v bunke pozícii prvého dňa zvolené
" mesiac na základe na DayOfWeek . "
Odstráňte úvodzovky na prvý a posledný riadok kódu .
4
skopírujte zvyšok kódu , ktorý berie formátu z kódu vyššie a vytvoriť aktuálny kalendár . Vložte kód priamo pod , kde kód z vyššie uvedených strán .
" Select Case denVtýdnu
Prípad 1
Range ( " a3 " ) . Value = 1
Case 2
Range ( " b3 " ) . Value = 1
Prípad 3
Range ( " c3 " ) . Value = 1
prípad 4
Range ( " d3 " ) . Value = 1
Case 5
Range ( " e3 " ) . Value = 1
Case 6
Range ( " F3 " ) . Value = 1
Prípad 7
Range ( " g3 " ) . Hodnota = 1
End Select
" Loop through rozsahu A3 : g8 postupne jednotlivé bunky po " 1 "
" . bunky
pre každú bunku v Range ( " A3 : g8 " )
RowCell = cell.Row
ColCell = cell.Column
' robiť , keď " 1 " v prvom stĺpci .
Ak cell.Column = 1 a buniek . riadok = 3 Potom
" robiť , ak aktuálne bunka nie je v 1. stĺpci .
ElseIf cell.Column < > 1. Potom
Ak cell.Offset ( 0 , -1 ) . Value > = 1 Potom
cell.Value = cell.Offset ( 0 , -1 ) . Hodnota + 1
" Zastaviť , ak posledný deň v mesiaci bol
" vstúpil
Ak cell.Value > . ( FinalDay - startdate ) Potom
cell.Value = " "
" Exit slučka , kedy kalendár má správny počet
" dní na obrázku .
Exit na predaj
End If
End If
" Páči sa iba vtedy , ak aktuálne bunka nie je v riadku 3 a je v stĺpci 1.
ElseIf cell.Row > 3 a cell.Column = 1 Potom
cell.Value = cell.Offset ( -1 , 6 ) .. keď bol zadaný posledný deň v mesiaci Zastaviť Hodnota + 1
'
Ak cell.Value > ( FinalDay - startdate ) Potom
cell.Value = " "
" Exit slučka , kedy kalendár má správny počet dní
" obrázku .
Exit na predaj
End If
end If
Ďalšie
' Vytvoriť Vstupné buniek , formátovanie je stred , obtekanie textu , a pohraničnej
" okolo dní .
x = 0 . 5
Range ( " A4 " ) Offset ( x * 2 , 0 ) EntireRow.Insert
S rozsahom .. ( " A4 : G4 " ) Offset ( x * 2 , 0 )
. RowHeight = 65
. HorizontalAlignment = xlCenter
. VerticalAlignment = xlTop
. WrapText = TRUE
. Font.Size = 10
. Font.Bold = False
' Odomknúť tieto bunky , aby bolo možné zadávať text neskôr po
" list je chránený .
. Locked = False
End With
" Daj ohraničenie okolo bloku dát .
S Range ( " A3 " ) . Offset ( x * 2 , 0 ) . Zmena veľkosti ( 2 , _
7 ) . Hranice ( xlLeft )
. Hmotnosť = xlThick
. ColorIndex = xlAutomatic
End With
S Range ( " A3 " ) . Offset ( x * 2 , 0 ) . Zmena veľkosti ( 2 , _
7 ) . Hranice ( xlRight )
. Hmotnosť = xlThick
. ColorIndex = xlAutomatic
End With
Range ( " A3 " ) . Offset ( x * 2 , 0 ) . Zmena veľkosti ( 2 , 7 ) . BorderAround _
Hmotnosť : = xlThick , ColorIndex : .. = xlAutomatic
Ďalšie
Range ( " A13 " ) , Value = " " Tak Range ( " A13 " ) Offset ( 0 , 0 ) _
. Resize ( 2 , 8 ) . EntireRow.Delete
" Vypnúť mriežky .
ActiveWindow.DisplayGridlines = False
" Chrániť list , aby sa zabránilo prepísanie dáta
ActiveSheet.Protect DrawingObjects : . = pravda , Obsah : = pravda , _
scenáre : = TRUE
" Zmena veľkosti okna zobraziť všetky kalendára ( môže budú musieť byť upravené
" pre nastavenie obrazu ) .
ActiveWindow.WindowState = xlMaximized
ActiveWindow.ScrollRow = 1
" Povoliť obrazovky prekreslenie s kalendár predstavenie .
Application.ScreenUpdating = TRUE
" Zabrániť bude chyba pasca , ak chyby nájdené ukončenie Návrat klipart
" tu .
Exit Sub
' chyba spôsobí MsgBox indikuje problém , poskytuje nové vstupné pole ,
" a pokračuje na riadku , ktorá spôsobila chybu
MyErrorTrap : .
MsgBox " Možno ste zadali mesiac a rok správne . " _
& Chr ( 13 ) & " Spell mesiac správne " _
& " ( alebo použite 3 písmeno skratka ) " _
& Chr ( 13 ) & " a 4 číslice pre rok "
MyInput = InputBox ( " Zadajte mesiac a rok pre kalendár " )
Ak MyInput = " " Potom Exit Sub
Resume
End Sub "
Odstráňte úvodzovky na prvý a posledný riadok kódu . Kliknite na ikonu " Uložiť " na paneli nástrojov . Kliknite na " File " položku ponuky a potom " Zavrieť a vrátiť sa do programu Microsoft Excel . "
5
Spustite modul " CalendarMaker " . V programe Excel 2007/2010 , kliknite na záložku " Developer " a potom kliknite na " makrá . " V starších verziách programu Excel , kliknite na " Nástroje " , prejdite na " Makrá " a potom kliknite na " makrá . " Vyberte " CalendarMaker " makro zo zoznamu v okne , ktoré sa objaví , a kliknite na tlačidlo " Run " .
Copyright © počítačové znalosti Všetky práva vyhradené