Last active
December 26, 2020 16:24
-
-
Save chrdek/dcbc52f6ee68fa7f7d1fd2b156c4705e to your computer and use it in GitHub Desktop.
Add daily tasks in excel - with SIG (with DD/MM/YYYY)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Function Modify-Excel([switch]$addSheet) { | |
$defaultdir = "$env:USERPROFILE\Documents\Spreadsheet_1.xlsx"; | |
$xls = New-Object -ComObject Excel.Application; $xls.Visible = $false; | |
$xlShiftDown = -4121; | |
$fileModify = $xls.Workbooks.Open($defaultdir); | |
# select latest/current working month .. | |
$spreadSheet = $fileModify.ActiveSheet; # $fileModify.Worksheets | ?{ $_.Name -ilike "*2020" } | Select -Last 1 | |
if ($addSheet) { | |
Try { | |
# Create an additional worksheet.. | |
$Currentmonth = ([System.DateTime]::Now).ToLongDateString().Split(' ')[1]; | |
$Nextmonth = ([System.DateTime]::Now.AddMonths(1)).ToLongDateString().Split(' ')[1]; | |
$Currentyear = ([System.DateTime]::Now).ToLongDateString().Split(' ')[2]; | |
$lastSheet = ($fileModify.Worksheets).Count(); | |
Write-Host "Added worksheet #$($lastSheet + 1) to file.. after ws `'$(($fileModify.Worksheets | Select -Last 1).Name)`'" | |
$lastwsheet = $fileModify.Worksheets | Select -Last 1; | |
$addedsheet = $fileModify.Worksheets.Add($lastwsheet); | |
$addedsheet.Name = "Days_$($Nextmonth)_$Currentyear"; | |
$lastwsheet.Move($addedsheet); | |
$addedsheet.Select(); | |
$f=0; | |
for ($r=3; $r -lt 34; $r++) { | |
$valueDate = (([System.DateTime]::Now)).ToString("dd/MM/yyyy"); | |
$addedSheet.Cells.Item($r,1) = (($valueDate -as [System.DateTime]).AddDays($f++)); | |
} | |
} | |
Catch { Write-Warning "Error while adding to excel, duplicate sheet/error in name."; return $($null);} | |
} | |
# Create/Print daily input, UTF-16 encoded chars. | |
# input 1 - unicode string, label in code | |
[string]$el_syst_part1 += [Int[]]@(924,942,957,965,956,945) | %{$_ -as [char]}; | |
[string]$el_syst_part2 += [Int[]]@(49) | %{$_ -as [char]}; | |
# input 2 - unicode string, label in code | |
[string]$el_dat_part1 += [Int[]]@(924,942,957,973,956,945) | %{$_ -as [char]}; | |
[string]$el_dat_part2 += [Int[]]@(51) | %{$_ -as [char]}; | |
# input 3 - unicode string, label in code | |
[string]$an_dat_proc_part1 += [Int[]]@(931,951,956,949,943,969,963,951) | %{$_ -as [char]}; | |
[string]$an_dat_proc_part2 += [Int[]]@(51,50) | %{$_ -as [char]}; | |
# Create complete resulting strings.. | |
[string]$el_syst = @($($el_syst_part1 -replace ' ',''),$($el_syst_part2 -replace ' ','')) -join ' '; | |
[string]$el_dat = @($($el_dat_part1 -replace ' ',''),$($el_dat_part2 -replace ' ','')) -join ' '; | |
[string]$an_dat_proc = @($($an_dat_proc_part1 -replace ' ',''),$($an_dat_proc_part2 -replace ' ','')) -join ' '; | |
$dailyTask = [string[]]@($($el_syst), | |
$($el_dat), | |
$($an_dat_proc))[$(Get-Random -Maximum 3)]; | |
$dayissued = $([System.DateTime]::Now.ToShortDateString().Split('/')[0] -as [int]); | |
$spreadSheet.Cells.Item($($dayissued) + 2,3) = $dailyTask; | |
$spreadSheet.Cells.Item($($dayissued) + 2,4) = $dailyTask; | |
# Add to relevant cells. | |
$spreadSheet.Columns.Item('C').columnWidth = 40; | |
$spreadSheet.Columns.Item('D').columnWidth = 40; | |
$fileModify.Save(); | |
$fileModify.Close(); | |
$xls.Quit(); | |
} | |
Modify-Excel | |
#Add a new month, new daily task tab on excel. Modify-Excel -addSheet; | |
Start-Process "$env:USERPROFILE\Documents\SpreadSheet_1.xlsx"; | |
# SIG # Begin signature block | |
# MIIEGAYJKoZIhvcNAQcCoIIECTCCBAUCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB | |
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR | |
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUnut52g64u/WgPrNfc8zmJ42a | |
# iLigggIvMIICKzCCAdCgAwIBAgIQP671MxE0Op1P87qxbgk5QDAKBggqhkjOPQQD | |
# AjBbMRMwEQYKCZImiZPyLGQBGRYDa29tMRUwEwYKCZImiZPyLGQBGRYFZXJyb3Ix | |
# FTATBgNVBAsMDFVzZXJBY2NvdW50czEWMBQGA1UEAwwNQ2hyaXN0b3MgVGVzdDAe | |
# Fw0yMDEyMjIxMTU2MzVaFw0yMTEyMjIxMjE2MzVaMFsxEzARBgoJkiaJk/IsZAEZ | |
# FgNrb20xFTATBgoJkiaJk/IsZAEZFgVlcnJvcjEVMBMGA1UECwwMVXNlckFjY291 | |
# bnRzMRYwFAYDVQQDDA1DaHJpc3RvcyBUZXN0MFkwEwYHKoZIzj0CAQYIKoZIzj0D | |
# AQcDQgAEvhilEJNgpX+c/IGwUJ1x03FS4iEXjpLqD0H2ROqYyqzNF3MbY6MNEuSI | |
# pU8CcVR608lI+nHmuoib13jmfraLbKN2MHQwDgYDVR0PAQH/BAQDAgeAMBMGA1Ud | |
# JQQMMAoGCCsGAQUFBwMDMC4GA1UdEQQnMCWgIwYKKwYBBAGCNxQCA6AVDBNjaHJp | |
# c3Rlc3RAZXJyb3Iua29tMB0GA1UdDgQWBBSnqsSsh8Z1o6DpuYiG20a3dvu1IzAK | |
# BggqhkjOPQQDAgNJADBGAiEA7yVon21IoGplLfBScCb6bDD+wlFkvpuvdFvx9H/R | |
# GMkCIQClHwnAY0GT+4CCuxUv+J137OG2CHtrFH88WkVeA8ekITGCAVMwggFPAgEB | |
# MG8wWzETMBEGCgmSJomT8ixkARkWA2tvbTEVMBMGCgmSJomT8ixkARkWBWVycm9y | |
# MRUwEwYDVQQLDAxVc2VyQWNjb3VudHMxFjAUBgNVBAMMDUNocmlzdG9zIFRlc3QC | |
# ED+u9TMRNDqdT/O6sW4JOUAwCQYFKw4DAhoFAKB4MBgGCisGAQQBgjcCAQwxCjAI | |
# oAKAAKECgAAwGQYJKoZIhvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIB | |
# CzEOMAwGCisGAQQBgjcCARUwIwYJKoZIhvcNAQkEMRYEFFdOPOA12JLdrGsqBaAd | |
# 20FdjY/fMAsGByqGSM49AgEFAARHMEUCIQDNsT4t9/hVrFvintvMxYtbm0Tp4o4I | |
# nF6G3GyALE/0LwIgCvmIp4hvqOT5uZjymaAJoJ+c5hRnu9EL5zpNSGoA7fI= | |
# SIG # End signature block |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment