テキストエディタに悩み始めるとあっという間に時間が過ぎる。
そしてどのエディタもとても良くできてるので、凄く悩む。
古いタイプのWindowsユーザなら秀丸エディタがエディタの代名詞だっただろう。しかし、秀丸はシェアウェア。企業内できちんとライセンス管理できるかどうかは不安だ。また、シェアウェアは人に勧めにくい。
vimというマッチョな人もいるだろう。プログラミングをする上ではよく出来ているのだが、日本語をたくさん書くときには、コマンドモードの切り替えが煩雑だ。何よりも非プログラマーには操作が複雑すぎる。自分がいくら慣れても、職種の違う人にナレッジが共有できないと、戦力増強フェーズでは厳しい。
僕たちは、htmlも書けば、議事録も書く。議事録も書けば議事録も書く。
そんな分けで、Web制作する会社人がとりあえず持っておくテキストエディタを探し求めていて、たどりついがのが、gPad。以下、見所。
1.タブが保存&復帰できる
タブエディタはたくさんあるが、タブが保存できるというのは珍しい。アプリを終了しても、再度立ち上げた時には、前回開いてくれていたファイルをもう一回開いてくれるのだ。会議の議事録いっぱいと、HTMLとPerlとPHPとってやつが、せーので開いてくれるのはありがたい。
2.フォントサイズがぬるぬる変えれる
議事録をとるときいには、プロジェクターに映しながらということを良くやる。そうなると、大きな文字でタイプしたい。Windowsアプリには、コントロールキーをおしながらホイールを回すと、拡大ができるという機能を備えたアプリが多いが、gPadもこの機能をサポートしている。ホイールでぐりぐりやりながら拡大するので、ちょうどいいサイズに拡大できる。
3.DIFFツールとの連携がいい
ファイルの比較機能はどのエディタもがんばっては居るが、gPadは外部のファイル比較ツールを呼び出すことができる。Windowsを使っているWeb制作者なら、ほとんどの人が、TortiseSVNを使っているだろう。TortiseSVNに組み込まれている、TortiseMergeを呼び出すことができるので、いつも使っているファイル比較ツールをテキストエディタからでも呼び出せるのだ。
4.マクロがある
秀丸の時には大量にマクロを作っていて悦に至っていた。プログラマーとしての母国語は秀丸マクロだと言ってもいいくらいだった。ところがいくら作ってもシェアウェアだと人に勧めるのが難しい。gPadもJavaScriptでマクロがかける。私は「一行目の文字列をファイル名にして、固定フォルダに保存」というマクロを自作して使っている。保存フォルダをDropBoxとかにすれば、なんちゃってエバーノートのできあがり、メモがどんどんクラウド化される。超便利。
5.最近使ったファイルだけじゃない
最近使ったファイルという機能は、どのアプリでもよくあるが、gPadは「最近閉じたファイル」というメニューと、最近使ったフォルダという機能がある。さっき閉じたファイルを開きたいというニーズはあるし、よく使うフォルダをダイレクトに開くことができるというのも便利。
そんな感じ。逆に、gPadの売りとなってる、csv、tsv編集機能は試しに使ってみたが、そんなにしっくりこなかった。話だけ聞くと、それは便利だと思うのだけれど、表っぽいUIでエクセルのようでエクセルでないというのは、違和感が最後まで抜けなかったのだ。そもそもエクセルのないPCなどない。
アウトライン機能も使いそうで使わなかった。本格的なプログラミングはEclipseでやっているからかも知れない。
また、サクラエディタもかなり便利で、ほとんどのことはできるのだが、僅差でgPadが便利かなという感じ。
2012年11月18日日曜日
相場からみたセキュリティ対策
ITセキュリティには一定のルールがあって、業務上はそれに従わなくてはならないことがほとんど。
ただ、漫然とルールに従っているだけでは、ユーザサービスにおいては競合優位性は作れない。「簡単ログイン」やFaceBookのいいねボタンなどは、一般的なITセキュリティレギュレーションからは離れているが、圧倒的な利便性から普及した。
逆に言えば、「ユーザを守りながらも」「利便性の高い」セキュリティ指針であれば、競争優位に立てるということ。
ということで、ルールではなく「相場」としてのセキュリティを示す。
1.究極はセッションなんて無くてもいい
図書館の貸し出しシステムをご存じだろうか。東京都の中央区の図書館システムと渋谷区の図書館システムは両方とも「セッション」という概念がない。検索まではログインせずに使えて、貸し出し依頼をする瞬間に、IDとパスワードを入力する。貸し出し依頼という行為の数がそもそも限られているのだから、その瞬間で十分なのだ。セッションがなければセッションが乗っ取られるリスクも少ない。
2.情報が取り出せなければ、緩くても大丈夫
誰かにメールを送るのに、相手側のメールサーバへのログインは必要ない。鍵をかけなくちゃいけないのは、情報の取り出しであって、送信にはさしたるセキュリティは必要無いのだ。例えば「出前」という仕組みは、電話一本でできる。(気を利かせて会員登録させようとするのは野暮)
図書館の貸し出しシステムも、デフォルトのパスワードが緩くて、初期パスワードのままでも使えるケースがあるが、いたずらで予約をいっぱいされるくらいの被害で、何か情報を盗まれるという心配は無い。
3.同一セッションだけを対象にするのならログインの概念は必要無い
国税庁がe-taxという仕組みを提供している。確定申告の電子申請まで全て行うには、そのための手続きに何度も役所に足を運ばなくてはいけない(意味が無い)。ところが、確定申告の書類をつくるだけなら、ログインしなくても、必要な情報を記入すれば、確定申告のための生類は生成される。一次情報はサーバ上にあるのだが、永続化はされないし、別の端末からのアクセスもできない。データを保持したいというニーズに対しては、「今作りかけの確定申告情報をファイルとしてダウンロード」という機能が提供されている。PCのファイルをアップロードすれば続きから再開できる。
4.大事な情報の前にはログインしっぱなしでいい
Amazonの仕組みがよくできているのは、基本ログインしっぱなしであるということ。だから、再訪問したときにも、ずっと私を覚えていてくれていて、商品をレコメンドしてくれる。じゃぁ、パソコンを盗まれたら、物が買い放題じゃないかと言う心配があるかもしれない。しかし、商品を実際に購入するときには、パスワードを入れ直さなくちゃいけない。さらにさらに、万一パスワードが盗まれて居たとしても、届け先の住所を変えるには、クレジットカード番号をもう一回いれなおさなくちゃいけない。クレジットカード番号を入れ直すということは、もはや何も盗めてないのと一緒。
レコメンドから素性がばれるのはそれはもう情報流出として被害がでかいのだ!って人もいるだろうが、このあたりが利便性とのバランスだろう。
5.リアルな住所に届けるという認証
クレジットカード番号だけで物が買えてしまうという通販の仕組みは、酷いセキュリティのようにも見えるが、最終的には荷物を受け取るときに住所がばれるので、なりすましがやりにくい。ここにうまく目をつけているのが、オンラインバンク。窓口で対応する銀行に比べて、全て郵送で手続きをするため、なりすましがやりにくくなっている。
まとめ
セキュリティというのは、「今アクセスしている人が本人かどうかの確認」ができているかどうかに尽きる。
- 同一クッキーを送ってくる人は同じ人だろう
- パスワードは本人しか知らないだろう
- メールの受信箱は本人しか見れないだろう
- ショートメッセージの受信箱は本人しか見れないだろう
- 電話は本人しか受け取れないだろう
- 郵便物は本人しか受け取れないだろう
という感じ。パスワードが一番メジャーだが、すぐ忘れるし不便。メールはとてもメジャーだが、一人で複数人を名乗れる。ショートメッセージや電話は、大量に取得するには契約が面倒なので、本人かつ一人だけという特定をするのには便利。郵送物は本人確認ができる上に、電話に比べてもさらに複数の受信BOXを作りにくい。
一般的な、Webサービスは、会員登録時にメールで、ログイン時はパスワードという組み合わせが多い。セキュリティを強化する場合にはショートメッセージを組み合わせている。AmazonのEC2なんかは電話のコールバックを入れている。メルマガサービスなんかはメールだけで購読の登録解除ができるようになってる。
2012年11月3日土曜日
非デザイナーがイラストレーターをインストールしておいた方がいい理由
自身はデザイナーではないので、イラストレーターはあまり使ってなかったのだが、やっぱり観念してインストールした。
実際にはイラストは書かない。しかしイラストレーターには、「画像形式のコンバーター」としての機能がある。
こんなシーンに使える。
1.年賀状を写真屋さんで印刷してもらうために大きなJPEGファイルを作りたい
PCで年賀状を作れても、印刷はとても面倒。自宅のプリンターでは時間がかかる。何よりもインク代がかなりかかる。何色のインクが足りなくなるかは、やってみてからでないと分からない。来年にインクジェットのノズルが詰まっているかも知れない。
一方で、写真屋さんに持ち込めば、一気に解決。印刷ミスもない。ところが写真屋さんでは写真を印刷するフローしかなく、PDFなどを印刷はしてくれない。ということで、Wordで作った印刷データをPDFに変換し、それをイラストレーターに取り込んで、高解像度のJPEGファイルにすれば、写真屋さんで印刷してもらえる。
最初からイラストレーターで年賀状を作ってもいいのだが、Wordの方がテンプレートが充実していたり、何よりも、Officeの操作なら誰でも文字組ができる。行間の調整なんて、イラストレータの初心者ではまるで分からないだろう。
2.PDFの一部をエクセルやパワポに取り込みたい
企業内では、PDFでの情報のやりとりが多い。特に会社をまたがる情報は、再編集可能なOfficeドキュメントではなく、PDFでやりとりされる。発注先からの提案資料の一部を取り出して、自分の企画書に取り込んで、吹き出しでコメントしたいというようなケースはある。
そういうときも、イラストレーター!PDFをイラストレータに取り込んで、WMF(ウィンドウズメタファイル)に書き出す。WMFはオフィスのオートシェイプの形式だから、拡大してもキレイ。
つまり、PDFやWMFなどのドロー系のフォーマットと、JPEGなどのラスタイメージのコンバーターとしてイラストレータは優秀なのだ。
実際にはイラストは書かない。しかしイラストレーターには、「画像形式のコンバーター」としての機能がある。
こんなシーンに使える。
1.年賀状を写真屋さんで印刷してもらうために大きなJPEGファイルを作りたい
PCで年賀状を作れても、印刷はとても面倒。自宅のプリンターでは時間がかかる。何よりもインク代がかなりかかる。何色のインクが足りなくなるかは、やってみてからでないと分からない。来年にインクジェットのノズルが詰まっているかも知れない。
一方で、写真屋さんに持ち込めば、一気に解決。印刷ミスもない。ところが写真屋さんでは写真を印刷するフローしかなく、PDFなどを印刷はしてくれない。ということで、Wordで作った印刷データをPDFに変換し、それをイラストレーターに取り込んで、高解像度のJPEGファイルにすれば、写真屋さんで印刷してもらえる。
最初からイラストレーターで年賀状を作ってもいいのだが、Wordの方がテンプレートが充実していたり、何よりも、Officeの操作なら誰でも文字組ができる。行間の調整なんて、イラストレータの初心者ではまるで分からないだろう。
2.PDFの一部をエクセルやパワポに取り込みたい
企業内では、PDFでの情報のやりとりが多い。特に会社をまたがる情報は、再編集可能なOfficeドキュメントではなく、PDFでやりとりされる。発注先からの提案資料の一部を取り出して、自分の企画書に取り込んで、吹き出しでコメントしたいというようなケースはある。
そういうときも、イラストレーター!PDFをイラストレータに取り込んで、WMF(ウィンドウズメタファイル)に書き出す。WMFはオフィスのオートシェイプの形式だから、拡大してもキレイ。
つまり、PDFやWMFなどのドロー系のフォーマットと、JPEGなどのラスタイメージのコンバーターとしてイラストレータは優秀なのだ。
「パスとしてコピー」を使えば、作業効率がめちゃくちゃ上がる
マウスを使ったグラフィカルインターフェースには、「ドラッグ&ドロップ」という操作がある。ところが、実際にはこのオペレーション、「掴む」「掴んだまま移動させる」「別のウィンドウに落とす」という一連の作業を途切れることなくやらなくちゃいけないので、小さなマウスパッド・小さな画面では難しい。
だから、ファイルの移動でさえも、ファイルを右クリック→切り取り→対象のウィンドウをアクティブに→右クリック→貼り付け、ということの方が「確実」なオペレーションになる。割とやってる人は多い。
ウィンドウズのフォルダ上でのファイル操作では、ファイルのカット&ペーストの概念があるが、アプリをまたがるとそうは行かない。
例えば、できないのだけれど、理想としてはこういうことをしたい。
だから、ファイルの移動でさえも、ファイルを右クリック→切り取り→対象のウィンドウをアクティブに→右クリック→貼り付け、ということの方が「確実」なオペレーションになる。割とやってる人は多い。
ウィンドウズのフォルダ上でのファイル操作では、ファイルのカット&ペーストの概念があるが、アプリをまたがるとそうは行かない。
例えば、できないのだけれど、理想としてはこういうことをしたい。
- デスクトップ上のファイルをコピー
- gmailを開いて、ファイルを添付したいので、ペースト
- 送信
みたいなことをしたい。企業内のメールなんて、ほとんどファイル共有ツール。ファイル添付をなんぼほど確実にするかが仕事の精度みたいなもん。でもできない。メールソフトとが、OUTLOOKだったりすると、Officeソフトの「送信」機能で、一気に添付ファイル登録まで行けるが、このご時世、なんでもかんでも、ファイルを開くダイアログからのファイル選択。
てことで、発明したのが、このフロー。
- 対象のファイルをシフト+右クリック→パスとしてコピー
- gmailのファイルを開くダイアログでペースト
- 送信
「パスとしてコピー」機能は、ファイルのフルパスをコピーしてくれる。ファイルを開くダイアログは、フルパスを入れると、直接指定が可能。だから、フォルダを探し回る必要がない。文字通り、目をつむってもファイルが添付できる。
さてこの、パスとしてコピー機能。フォルダでなくても使える。ウィンドウズキーから、ファイルを検索しても、シフト右クリックでパスとしてコピーできる。それだけではなく、「ファイルの保存ダイアログ」でも可能なのだ。
まさにこのブログを書いているときにも使っている。画像を加工して、それを添付するのに、Paint.netというお手軽ペイントソフトを使っている。まず、保存する。もう一回「名前をつけて保存」をすると、さっき保存したこのファイルがダイアログに出てくる。それをシフト右クリックで、パスとしてコピーを選ぶと、「今編集中のフルパス」がクリップボードにコピーされる。
あとは、そのフルパスを、ブログのファイルアップロードダイアログにペーストすればよい。
この作業工程でいいのは、「今のフォルダの位置」を一切意識しないということ。だからこのブログにアップしているファイルは、無題.pngをデスクトップに上書きで作ってはアップしている。ファイル名さえ自分では着けてない。パーマリンクとしてのファイル名フルパスがやりとりできさえすれば、コンピュータ様は満足なのだ。
フォルダを探し回っている時間は無駄でしかない。間違ったファイルを公開してしまうというミスはとんでもなく大きい。だから、「今僕が触っているファイルのフルパスを確実に伝える」ということは、時間もリスクも減らす上で大事なのだ。
エクセルのWebクエリでログインまでしちゃう方法
昔に比べると、社内業務システムも柔軟になってきて、Webブラウザだけで入出力ができるようになり、会計上のルールで印刷が必要な場合にはPDFで出力できるようになってる。
しかしながら、グラフに出力してみたり、分析の軸をあれこれ変えてみたいというニーズに対しては、サーバーサイドエンジニアリングは、「素のエクセル」の前には手出しができない。やりたいことがエクセルならエクセルでやってもらうのが一番。
ところが、エクセルには情報を収集する仕組みがなく、情報システムのDBに格納されている。間をとって、CSV出力機能を設けているところが多いだろうが、Webシステムからのダウンロードは、PCのダウンロードフォルダを汚す。何よりも重要な情報が暗号化されてない中間ファイルが存在することがよろしくない。
そこで、最もエクセルと情報システムとを最短距離で結ぶのが、エクセルのWebクエリ機能。機能としてはシンプルで、ブラウザにHTMLのTABLEとして出力されているものが、そのままエクセルのセルにセットされる。
中間ファイルがなく、さらに情報システムも特殊なことをしないでよい。
ところがこのWebクエリ、画面遷移ができない。とあるURLをGETするだけ。だから、ログインが必要な深い画面で、Webクエリを使うと単にログインフォームを取得するだけになる。
じゃぁってことで、エクセルの別の昨日で、ログインをしておけば、きっと同じセッションを使えるはずだから、Webクエリでもログイン後の画面が見えるはず。
ということで長くなったけど、手順。
1.開発ツールから挿入→AnctiveXコントロール→コントロールの選択を選ぶ
しかしながら、グラフに出力してみたり、分析の軸をあれこれ変えてみたいというニーズに対しては、サーバーサイドエンジニアリングは、「素のエクセル」の前には手出しができない。やりたいことがエクセルならエクセルでやってもらうのが一番。
ところが、エクセルには情報を収集する仕組みがなく、情報システムのDBに格納されている。間をとって、CSV出力機能を設けているところが多いだろうが、Webシステムからのダウンロードは、PCのダウンロードフォルダを汚す。何よりも重要な情報が暗号化されてない中間ファイルが存在することがよろしくない。
そこで、最もエクセルと情報システムとを最短距離で結ぶのが、エクセルのWebクエリ機能。機能としてはシンプルで、ブラウザにHTMLのTABLEとして出力されているものが、そのままエクセルのセルにセットされる。
中間ファイルがなく、さらに情報システムも特殊なことをしないでよい。
ところがこのWebクエリ、画面遷移ができない。とあるURLをGETするだけ。だから、ログインが必要な深い画面で、Webクエリを使うと単にログインフォームを取得するだけになる。
じゃぁってことで、エクセルの別の昨日で、ログインをしておけば、きっと同じセッションを使えるはずだから、Webクエリでもログイン後の画面が見えるはず。
ということで長くなったけど、手順。
1.開発ツールから挿入→AnctiveXコントロール→コントロールの選択を選ぶ
2.MicroSoft Web Brouser を選択
3.そのままだと、どこにもナビゲートできないので、マクロで画面を遷移させる
この例では、シートがアクティブになった瞬間に、フェースブックのトップページに移動している。
あとは、デザインモードを解除して、シートをアクティブにすると、ログインフォームが画面上に出てくるので、手動でログインすればよい。オートメーションでログインまするという方法もできそうではあるが、それはセキュリティの穴を作ることになるので、要求があってもやらない。
これで、ログイン後にしか見れない画面のTABLEをWebクエリで取得ができる。Webクエリそのものの説明はあちこちにあるのでそちらを参照。
ちなみに、表のデータなのにがんばってDIVで表現しているページがあったりすると、Webクエリは使えない。いやいや表なんだからTABLEで表現しなさいよと。Tableタグを排除するのがモダンなHTMLなんだと勘違いしている先進的コーダ-はちと困る。
ログイン機能付きWebクエリつきエクセルファイルは、位置づけとしては、「分析機能の付いたブラウザ」。データを保存しなければ、セキュアだし、仮に保存したとしても、エクセルには暗号化機能があるので、CSVよりはセキュリティ的にまし(少なくとも内容が検索インデックスされることはない)。
2012年10月27日土曜日
エクセルの日付書式をマスターしてスケジュール王に俺はなる!
小中高と「時間割」に縛られてきている人がほとんどだが、時間割を作ったことのある人は少ない。
時間に縛られるのはイヤという印象はあっても、自分で時間割を決めるにはちょっとしたコツが必要。
スケジュール管理のソフトはあれこれあるが、圧倒的に使われるのはエクセルだ。表計算ソフトではあるものの、「升目ドキュメントツール」市場を見ても、エクセルが一番になる。
そんなわけで、エクセルでスケジュールを作るときのコツ。
1.1ヶ月半で終わるレベルのプロジェクトは縦軸を時間軸にする
広告制作ではよく見るタイプのスタイル。タスク重視ではなく、担当重視のスケジュール。タスクを分解してから担当を決めるのが、プロジェクトマネジメントの定石ではあるが、Web制作などは担当が決まっている。ディレクション、デザイン、開発と担当があって、それぞれが何をしなくちゃ行いけないかはだいたい見えている。こんなイメージ
「今日中に仕上げます」なんてなのは、今日の終業時刻が締め切りなのか、今日の23:59のことなのか、それともあしたの始業時間に間に合っておけばいいんでしょと思っているのか。
2.日付には曜日をつける
エクセルには日付の書式がある。日付には曜日を入れた方が、観る側が今日明日を認識しやすくなって、気合いが入る。曜日はマスト。エクセルの書式で、yyyy/m/d(aaa) を入れると、曜日が入る。
日付書式のダイアログを開くのさえ面倒な時には、書式設定の結果をテキストに変換する、「text」というワークシート関数もある。「=text(A1,"aaa")」と入れると、A1セルに入った日付を、漢字の曜日に変えてくれる。
3.休日をグレーアウト
ちゃんと休日をグレーアウトして、一週間が7日ではなく5日であるということを明示する。週末に後続タスクにバトンタッチしても、それが着手できるのは月曜からであるということを明示する。グレー表示は、画面上は黄色にしておくと、白黒印刷の時にいい感じのグレーになる。祝日は忘れがちなので、それもいれておく。
4.「今日」が分かる用に
エクセルには、条件付き書式がある。書式のルールに「日付」がある。セルの日付が「今日であれば」セルの色を変えるということができる。「今日は何する日?」というのが分かりやすくなる。
5.合流を大事に
デザインが終了すると、そこでクライアントのレビューの時間をとらなくちゃいけないのに、それをとっていなくて、レビューが戻ってこないなんてことはある。クライアントの時間をブロックするためもスケジュールは必要。6.最終的には時刻が大事
「20日サービスリリース」だと、20日0時0分にリリースになってしまう。そうではなく、「20日の13:00からリリースして、半日ほどべったり様子をみましょう」というように、時間をブロックする。「今日中に仕上げます」なんてなのは、今日の終業時刻が締め切りなのか、今日の23:59のことなのか、それともあしたの始業時間に間に合っておけばいいんでしょと思っているのか。
2012年10月25日木曜日
賢い文章をたくさんペーストできれば、それはもはや賢い人
チューリング・テストというテストがある。
チャットをしている人が、相手を人間だと思えばそれはもはや、人間なのではないかという話し。知能があるかどうかはではなく、そう捉えることができるかどうかと言う問題。
目の前にロボットが居て声を出せばボロがでるが、チャットであれば機械でもばれないかも知れない。
教育現場やクリエイティブな場面ではコピペは御法度ではあるが、社会生活の中では「他の賢い人と同レベルの仕事をする」ということが求められる。多くの活動がコンピュータでコミュニケーションされるため、結局のところ「コピペ力」が仕事力を決める。
2012年10月24日水曜日
日程調整メールを絶対に間違えない方法
調整HACKS|Media Technology Labs (MTL) : メディアテクノロジーラボ
を書いて、だいぶ経つのだが、それでも調整日を間違うケースがあとを経たない。
Aさん「10/24(水) 10/25(木) 10/26(金) のいずれか都合のよい、日程をご返信ください」
Bさん「24水曜日が都合が悪くてあとはOKです」
Aさん「ありがとうございます」
Cさん「あれ、24日は火曜日じゃないですか?ちなみに25日の水曜日ならOKです」
Aさん「すみません。じゃ、25日水曜日が濃厚ということで」
Bかん「あー、すみません水曜日がダメなんです」
みたいなメールのやりとりは、絶対にやったらアカンのですよ。
そういう時のためには、「人というものは間違うもの」として、カレンダーをコピペする。
Googleカレンダーは、ブラウザなので、日付をがっつりコピーすることができる。
まず、仮押さえをする。
次に、日付をコピーしていく。
それを、メールにペーストしていく。
ちょっと面倒な気もするが、日付のミスタイプの被害は甚大で、たくさんの人にご迷惑をおかけするので、コピペを心がけたい。
なお、複数コピーして、あとでメール編集画面を開いて、一気にペーストということもできる。それはクリップボード履歴ツールを使うとよい。私は、Charu3というクリップボード履歴ツールを使っているが、それはまた今度。
YYYYMMDDでファイルをリネームするためのJS
オフィスのファイル名ルールではよくあるこれ。
送るフォルダを一発で開くには、ファイル名を指定して実行で「shell:sendto」を入れればいい。
これで、ちょっと大人になった気分。
「Book1.xlsx」でファイルを送ってくる人よりも「収益シミュレーション20121024.xlsx」でファイルを作る人の方が信頼される。
「上半期実績と見通し20121024.xlsx」
みたいなやつ。バージョン管理システムがあればそれでもいいのだけれど、両方開いたりすることを考えるとやっぱり別ファイル名がいい。特にエクセルは、ディレクトリが別でも同じファイル名は開くことができないので、ファイル名は別にしておく必要がある。
そしてこのYYYYMMDDのファイル名を作る方法あれこれ。
1.ATOKを使う
ATOKは賢くて、「きょう」を変換すると「2012/10/24(水)」みたいな候補も出してくれる。そして日付の書式のオプションで、YYYYMMDDの形式も選ぶことができる。ちなみに、あした提出の書類なら「あした」で検索しても、あしたの日付で変換してくれる。「げつよう」とか「かよう」でも、変換してくれるのが兆賢い。
ただし、ATOKは有料。これだけのために全社でATOKを買おうというのは、説得力が薄い。
2.そういうJSを書く
JSでWSHを書いて、そのJSを、「送る」フォルダに入れる。
スクリプトはこれ。
if(WScript.Arguments.length == 0){これを、yyyymmdd.js みたいな名前で保存して、送るフォルダに保存すればいい。
WScript.Echo("ファイルをドロップしてください");
WScript.Quit();
}
var source = WScript.Arguments(0);
if(!source.match(/(.*\\)(.+?)\.(.*?)$/)){
WScript.Echo("ファイルをドロップしてください");
WScript.Quit();
}
var dir = RegExp.$1;
var basename = RegExp.$2;
var ext = RegExp.$3;
//今日の日付を作成
var d = new Date();
var strDate = d.getFullYear();
strDate += ("0" + (d.getMonth() + 1)).slice(-2) ;
strDate += ("0" + d.getDate()).slice(-2) ;
//WScript.Echo(strDate);
//もしbasenameに数字8桁があれば、そこを置換
if(basename.match(/\d{8}/)){
//WScript.Echo(basename);
basename = basename.replace(/\d{8}/,strDate);
}else{
basename += strDate;
}
//WScript.Echo(basename);
var newname = dir + basename + "." + ext;
var fso = new ActiveXObject("Scripting.FileSystemObject");
fso.GetFile(source).Copy(newname);
WScript.Echo(newname);
送るフォルダを一発で開くには、ファイル名を指定して実行で「shell:sendto」を入れればいい。
これで、ちょっと大人になった気分。
「Book1.xlsx」でファイルを送ってくる人よりも「収益シミュレーション20121024.xlsx」でファイルを作る人の方が信頼される。
2012年10月22日月曜日
SJISで表現できる文字を全部表示してみるとテストがしやすくなる
文字化けが起こらないかどうかのテストをしてたときのテストデータを晒します。
これ。
https://docs.google.com/file/d/0B9FUUzjGImMRY0hXMG1TV014X28/edit
GoogleDriveのプレビューが化けているけど、保存すれば、SJISの全領域のデータがテキストファイルとして使える。
これをごそっとコピーペーストして保存。再表示してコピーして、文字列として違いがなければ、テスト合格。
単純に、JISで定義されている漢字を眺めるのに使ってもいい。
お子様の名前をつけるときにも眺めてください。
これ。
https://docs.google.com/file/d/0B9FUUzjGImMRY0hXMG1TV014X28/edit
GoogleDriveのプレビューが化けているけど、保存すれば、SJISの全領域のデータがテキストファイルとして使える。
これをごそっとコピーペーストして保存。再表示してコピーして、文字列として違いがなければ、テスト合格。
単純に、JISで定義されている漢字を眺めるのに使ってもいい。
お子様の名前をつけるときにも眺めてください。
2012年10月21日日曜日
エクセル仕事を早めたかったら、数式のみペーストと、値のみペーストへのショートカットつくっとけ
エクセルネタ。
私のエクセルは、左上に、数式のみペーストと、値のみペーストをボタンとしておいてあります。
これを、ALT+1と、ALT+2に割り当てています。
こうすることで、罫線を崩さずに、数式や値のみを持って行くことができます。コピペしたあとにいちいち罫線を直すという手間が省ける。
やりかたはこれ。
ショートカットは勝手に左から番号つきでついてくれる。
Google SpreadSheetでQRコードを大量に生成する方法
QRコードネタ。
Google SpreadSheetには、imageというワークシート関数がある。
これを使えば、画像をセル内に表示できる。
さらに、これにGoogleチャートAPIをかますと、動的にQRコードが作れる。
こんな感じで入れると、QRコードがセル内に現れる。
あとは、URL部分を数式で、結合していけば、URL一覧から、QRコード一覧が作れる。
厳密には、GoogleチャートAPIに渡すパラメータは、URLエンコードしないといけないけど、クエリストリングがなければこれでいける。
これで、大量のフィーチャーフォンサイトを巡回できる。
Google SpreadSheetには、imageというワークシート関数がある。
これを使えば、画像をセル内に表示できる。
さらに、これにGoogleチャートAPIをかますと、動的にQRコードが作れる。
=image("http://chart.apis.google.com/chart?cht=qr&chs=200x200&chl=http://yahoo.co.jp" )
こんな感じで入れると、QRコードがセル内に現れる。
厳密には、GoogleチャートAPIに渡すパラメータは、URLエンコードしないといけないけど、クエリストリングがなければこれでいける。
これで、大量のフィーチャーフォンサイトを巡回できる。
登録:
投稿 (Atom)