IT仕事

CliborとPythonで明日(昨日)の日付を出す

投稿日:

Clibor、使ってますか? 私は毎日使っています

例えば、「2018/07/02(月)」のように明日の日付を書きたいと思ったら、どうやって入力していますか?
キーボードで13個以上のキーを押して、曜日の部分に差し掛かったら、英数モードを日本語入力モードに切り替えて、タイプしますか?
私はうん十年間、そのようにしてきたのですが、さすがに嫌になってきました。

それでも最近は知恵をつけてきて、Windows10のIMEなら、「明日(あした)」と入力して変換します。
すると下のほうに「2018年7月3日」「7月3日(火)」などが変換候補に挙がってくるので、その中から選びます。
このやり方なら、打つキーの数が1/4位になります。

ならばそれ使えばいいじゃん、ということではあるのですが、なぜかその候補に、私の欲しい「2018/07/02(月)」のフォーマットが無いのですよ。

ということで、CliborとPythonで、何とかします。

# -*- coding: utf-8 -*-
#<$C_CLB_PYTHON/>
import win32api,win32com.client,win32clipboard as CB,datetime
import datetime as dt
#
win32api.Sleep(100)
shell = win32com.client.Dispatch("WScript.Shell")
#
now = dt.datetime.now() 
r = now + dt.timedelta(days=1) 
tnstr = r.strftime('%Y/%m/%d')
yobi = ["月","火","水","木","金","土","日"]
text = tnstr + '(' + yobi[r.weekday()] + ')'
#
win32api.Sleep(100)
CB.OpenClipboard()
CB.EmptyClipboard()
CB.SetClipboardText( text, CB.CF_UNICODETEXT )
shell.SendKeys("^v")
CB.CloseClipboard()
#

上記のコードをCliborの定型文に入れて、Ctrlキー2回+右カーソルキー1回+数字キー1回の、計4つのキーのみで、明日の日付を入れられるようになりました。
ちなみに「r = now + dt.timedelta(days=1)」の最後を「-1」にすると、昨日の日付を出せます。

これでまた少し、自分好みの使いやすさに!

Pythonの日付処理は、以下の記事を参考にしました。
datetimeで曜日を調べる

-IT仕事

執筆者:

関連記事

no image

パラメータクエリにパラメータをセットして実行した結果をデータシートで表示する」というコードの実行で3065エラー

Accessの仕様として、パラメータクエリだけが駄目なのかと思ったら、なんと選択クエリが駄目なのだそう。 理由は、Executeメソッドはアクションクエリのもので、選択クエリのものではないからだそう。 …

no image

フリースポット

仕事で宿泊施設。 公衆無線LAN構築を提案、いい感触。 個人的興味の深い仕事に、よし今度こそはと。

no image

情報セキュリティアドミニストレータ試験

セキュアド試験、受験。 午前の試験、結構簡単だった。 今年から50問->55問になったので内容も変わったのかと心配していたのだが、過去4年で一番やさしかったのではないか。 苦手な計算問題が少なかったよ …

no image

会員大会に出席

所属しているとあるNPO法人の会員大会に出席してきた、この土日。 場所は津沢のコミュニティセンター。 なかなか土地感の無いところだが、そういう既視感がないところが、逆に現実を忘れさせてくれて、よかった …

no image

同じセルに数字があるファイルを開いて別のファイルにどんどん転記しては閉じていく×1000件・・・をExcelマクロで作る

昨日は、アンケートの下仕事をやった。 各ファイルの同じセルに数字の記入があって、それを開いて別のファイルにどんどん転記しては閉じていく・・・というのをExcelマクロで作るのだが。 最初は手作業でコピ …