Käytössäni on työvuorolista. Josta lähetetään yksi taulukko kerrallaan sähköpostiin. Makro kopioi sivun uuteen työkirjaan, josta tuo kyseinen sivu sitten lähetetään.
Ongelma on se että päivämäärä muuttuu aina yhden pykälän aikaisemmaksi, eli kun lista alkaa 16.5 niin kopioidussa uudessa sivussa Päivämäärä onkin 15.5. Onko kukaan pistänyt tuota ominaisuutta merkille ja miten sen voi estää?
Päivämäärät järjetykseen.
Kiitos
Ongelma on se että päivämäärä muuttuu aina yhden pykälän aikaisemmaksi, eli kun lista alkaa 16.5 niin kopioidussa uudessa sivussa Päivämäärä onkin 15.5. Onko kukaan pistänyt tuota ominaisuutta merkille ja miten sen voi estää?
Päivämäärät järjetykseen.
Kiitos
Vastaukset 2
Vanhimmat
pistäs vähän sitä makron sisältöä näkyviin - jos kerran alirutiini hoitaa tuon pvm:n vaihdon, sen pitää sillon olla siinä rutiinissa ajettavana
- tai disabloi kys rivi(t) hipsukoilla
Tuolla makrolla saan korjattua tuon päivämäärän mikäli ollaan kyseisellä sivulla. Mutta jos tullaan päävalikkosivulta jossa sama painike niin, samalla komennolla tuo ei toimi ellei solu D4 ole aktiivisena. Mutta jos pystyisi estämään, ettei excell vaihtaisi päivämäärä lainkaan pääsisi helpommalla. Eli excell toimii niin että edellisellä sivulla on edellinen päivämäärä johon lisätätään uudella sivulla 1. Normaali oloissa toimii mutta kun sivu kopioidaan uuteen työkirjaa jonka tuo makrotekee, kaavaan pitäisikin laittaa 2. Jotta päivämäärät olisivat kohdallaan.
Private Sub Siirto_Click()
' Työvuorolista kopiodaan uuteen työkirjaan ja liitetään sähköpostiin liitetiedostoksi.
Range("D4").Select
Sheets("Jakso_01").Select
Sheets("Jakso_01").Copy
ActiveSheet.Unprotect
ActiveCell.FormulaR1C1 = "=[Pitkätyövuorolista.xls]Päävalikko!R[-3]C[4]"
ActiveSheet.Shapes.Range(Array("Piilota", "Nayta", "Paluu", "Yhteen", "Siirto", "Tulosta")).Select
Selection.Delete
Application.Dialogs(xlDialogSendMail).Show
End Sub