おかげさまでspamコメントが増えてきましたので、一応コメントを承認制にしました。基本的には承認します。
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 ちょっと褒めて終わりましょう、ということで一日二回更新。極端。 内省報告でもなんでもいいんですが、何かしらテキストで回答したものを、エクセルに自動的にはっつけるスクリプトです。これは多分、うまく使えば結構便利だと思います。 set questionList to {"本日の体調は?", "本日の実験に対する感想は?", "次に参加する際の連絡先は?"}ボタンをあれこれ弄ると、五件法で回答させたりもできるかも。あと、たとえばこっちでsubject numberとかを入れておくと、記録するシートを開いて、subjectnumberに対応するセルにデータをだーっと入れて行く、ということも可能かも。 もう多分applescript記事は当分書きません。 PR もともとVBAが使えていたんですか,というと使えていなかったんですが,ともあれexcel2008ではVBAが使えない(んですよね?),ということで,ちょっとapplescriptを試してみたので覚え書きです。参考にしたのは,microsoftの Offcie 2008 Developersとか,excel applescript (PDF)とか。後者の元のページがどこかが良くわからないです… さて,まずは"tell"。 tell application "Microsoft Excel" なんのアプリケーションに対して以下のスクリプトを実施するのか?ということを,tell x で明示する必要があるようです。まずはExcelを使うのでこういう形ですが,Excelそのものの中でも, tell sheet "sheetname" of active workbookなどとして使います(この場合は,どのワークシートを使うか,ということで,こっちの方が有用ですね)。あ,"active"というのは,今動かせるやつ,的な意味ですね(たとえば,複数のワークブックを開いていれば,一般的には「最後の奴」だったり,「今クリックした奴」だったりするアレです)。 次に,"set x to y"。 set name of active sheet to "50ms"のように使います。基本的には,いわゆる「変数」でして,xにyを代入する,ということなのですが,Excelのセルやシートの名前にも適用できることになります。新しいファイルを開くと,"sheet1"があると思いますが,上記スクリプトによって,sheet1の名前が50msに変わる,というわけですね。たとえば。まだ試しては無いのですが,set X to {a,b,c,d,e}とすれば,Xの中にリストの形で変数を設定することができます。1 of Xとかにすると,aを呼び出せるということのようですね。 また,これはこのまんま覚えていただくとして, make new worksheet at active workbook with properties ¬というので新しいシートを作成することができます。¬←これは読み方が良くわからないのですが,alt+Lで出ると思います。{}内にもう少し色々なプロパティが設定できるようですが,とりあえず name:"sheetname"で,ダブルクオーテーション内の名前が新しいシートの名前になります。 コピーについては,いくつかのやり方があり,最もシンプルなやり方は, copy X to Yで,Xをコピーし,Yにペーストするというものです。ここで,X(あるいはY)の設定は, column A of row bのように,セルの位置を左上を基点として呼び出す方法と, range "An:Xm" というように,セル名をrangeで呼び出す方法があるようです。この場合は,copy range (rangeを指定)というコマンドになるので,実際は copy range (range "A1:A10")のようになります。更に,より詳細にどこからコピーするかを明白にすることもできます。たとえば, copy range (range "A1:A10" of sheet "sheetname" of active workbook)のように。rangeの場合,コピー先は,多分頭のセルだけを設定すれば良いように思います。 とりあえずコピーだけしておいて,ペーストは別にする,ということも可能です。この場合は, paste worksheet destination range "A3"とすれば,A3を基点として,コピーしておいたレンジを張り付けることができます。別のシート等にペーストをする場合は,その前に, tell sheet "sheetname" of active workbookとして,ペースト先のシートを明示しておきましょう。 ある式を特定のセルに入れるためには,次のようにします。 set formula of range "A1" of active sheet to "-199.795""formula"というのが良くわからないのですが,これがないと,range "A1" of active sheetという「変数」に"-199.795"という値を書き込むよ,という話になってしまい,セルに記入してもらえません。 また,この値に1000/600を足し続ける,だとか,ある列のセルを加算したものを下に並べていく,というときには,もっと良い解があるかもしれませんが,とりあえずrepeat処理を使うのが便利です。まず例を出しますと repeat with i from 1 to 422とすれば,さっき設定したA1の値に,1000/600を延々と足し続けるということが可能です。具体的に説明しますと, repeat with i from 1 to 422というのは,iという変数に,1から422の数字を入れます,ということですね。これは別に1から始まらなくても良いようです。次の, set formula of columun 1 of row(i+1) of active sheet toまでをまず説明すると,今のシート(active sheet)の一列目,(i+1)行目に,to以下のものを入れていきますよ,ということになりますよね。iは1から422でしたから,2から423の値が入りますよ,ということになります。次に, "=A"&i&"+1000/600"というのは,かなり苦肉の策なんですが…。やりたいことは,ひとつ上のセルの値に1000/600を足したいということです。つまり,A1セル(-199.795)以下は,A2セルに=A1+1000/600,A3セルに=A2+1000/600…といれていきたいんですね。普通にエクセルシート上であれば,$なしでコピペしていけばできるわけですが,applescriptでそれを実装するためにどうしたか,ということですね。ダブルクオーテーションで囲むと「文字列」として認識され,囲まないと変数(設定していれば)として認識されるはず,さらに文字列と変数を,&で繋ぐことができますよ,ということだったので,結局入れたい式のうち変わっているのはAの後にくる数字だけということなので, "=A"にi(数字)を入れて,その後に,"+1000/600"をつなげますよということになるわけです。うーん,うまく説明できない…。最後の end repeatというのは,ここまでで「repeat」が終わりですよ,ということで,まあこれはおまじないですね。 特定の行のデータを平均した,新たな行を作りたい,とかいう場合は,おそらく repeat with i from 1 to 100とかになるでしょうか。とりあえず使えるようになったところはこんなところです。誤解もあるかもしれませんので,詳しい方で気が向いたらいろいろ教えていただければと思います。 今日の結論:matlabを使った方が早いよ 今まで世間がEvernote,Evernoteと騒いでいるのがあまりピンと来ておらず、よくわかっていなかったのですが、ここ一ヶ月で、「あーこれは便利だわー」と思ったEvernoteの使い方二つを紹介します。あまり研究とは関係ない気がします…。 とっとくほどではない/とっといても見返しはしない/でもちょっとだけ有益なことが書いてる(気がする)チラシ・広報のメモに使うこれは渡辺だけのような気もしますが…たとえば、札幌市では「広報さっぽろ」という広報誌が届くわけですが、この中で、年金の額がちょっと上がりますよ、とか、確定申告の日付はいついつまでで、とかいう記事があったりするわけです。あるいは、JAF MATEに載っている、車の掃除方法でもいいですし、ふりっぱー(これはなんていうんだろう…無料のコミュニティチラシ、というか…)もほとんど捨てるんですけど、新しくオープンしたお店(最近だと、三井アウトレットパークとか)の特集とかはちょっと興味がある、というときに、とりあえずそのページをiPhoneで撮影して、適当なタグをつけてEvernoteにアップしておきます。この「適当なタグ」というのは、ま、テキトーにやっときましょ、テキトーに、の適当ではなくて、この問題を解決するための適当な方法、の方の適当です。どういうことかというと…
ずいぶん長くなってしまいましたが、一応二つ目も書いときます。こっちの方が実用性は高いかもしれません 家にあるものを場所ごとにタグ付けしてアップロードし、うちにあるものリストをつくるということで、これはわかりやすいと思いますが、まず一度家にあるあらゆるものを写真にとってタグをつけます。タグそのものは、場所で区分されていればなんでも良い(自分に便利なようにカスタムすれば良い)と思います。で、そうすると、どこに何があるか、を把握するきっかけになるし、かつその後はいつでもアクセスできるので、新しい物を買うとき等に検討が容易になります。もっともわかりやすい例で言えば、シャンプーとかボディソープとか塩とか洗剤とか、なんでもいいんですけど、そういうストックが必要なものについては、とりあえず写真をとってアップロードしておき、ストックを使ったらその写真を捨てるように心がけておけば、買い物に来て、あれ塩のストックあったっけ、というときに、(たとえば)「台所」タグで調べれて塩がなければああないな、というのがわかるわけですね。(このときに、調味料タグとか作ったほうがいいなーと思ったり)。最初に写真を撮りまくり、タグをつけてアップロードしまくるのはしんどいといえばしんどいのですが、まあ、無料会員の場合は月にアップロードできる量も限られていますので、何ヶ月かに分けるくらいのゆるやかな気持ちでやると良いかと思います。これを一回やると、まず写真撮るときに、これはいらねーわ、というものは捨てられますし、あとここまで来たら…ということで、そこまで思い入れのない手紙等はスキャンしたり、写真に撮った状態で残すということで良いかなーと思い切って処分できたりしますので、それだけでかなりすっきりします。かつ、もうちょっとハードなもの、例えば新しい食器を買おうかなーというときには、今ある食器と合う奴はどれだ、というのを写真見ながらできたりしますし(そして、台所タグに加えて、食器タグがあった方がいいかもなー、等と思い始める)、そういえばここにアレがあるから買わなくてもいいかな、とかもわかりやすくなります。あとは、掃除とか整理をするときに、イレギュラーなものが出てこなくなるので、あー、こんなものがここにあったのか…見よう/これはあっちにいれなくちゃ、みたいなことがなくなります。事前に、ここのこれをこっちに移し、あときれいに並べる、みたいにかなりの程度目的を明確にして掃除や整理に取りかかれるので、効率が上がります。これはかなり効能がある気がしています。 というところなのですが、なにこの記事長くて恐い…さて、書き終わってから、自分の持ち物をひたすらevernoteに突っ込んだ先人がいる事がわかりまして、あれじゃあこの記事は読みにくいだけじゃ…と思ったのですが、でもまあ、これだけ書いたのでアップします。参考になれば。なるかなあ…。でも、Evernoteの面白みというか、使ってよかった感は、情報がある閾値を超えて集積したときに発揮される気がするので、Evernoteがはやっているらしいから使ってみたいんだけど、何が面白いかよくわからない(渡辺のこと。こういうのをツールに使われる、という)、という人は、とにかく色々なものを取り込んでみる、というのをまずはおすすめします。 本日iOS4に乗り換えまして、ついでにということでiBookをダウンロードしてみました。それで、いくつかのPDFファイルを取り込んでみたんですが(iTunesに入れるのではなくて、直接PDFファイルを開き、iBookに取り込みとして)、これが読めないんですね。正確にいうと、表紙は本棚(ライブラリ)に見え、ファイル名もわかるのですが、これをタップしてもうんともすんとも言わない、とこういう状態です。 で、試行錯誤したんですが、結局、くまのプーさんの無料版をダウンロードして、書籍が一冊ライブラリにある状態にしたところ、iBook画面上部に書籍|PDFというタブ?が現れ、これをPDFに切り替えることで無事ファイルが読めるようになりました。めでたしめでたし。再現性があるか不明ですが、類似の事例で困っている方はなんかダウンロードしてみてはどうでしょうか。とりあえず、iBookのバージョンは1.1、iPhoneのバージョンは4.0、今日の日付は6月24日です。 ようやくsnow leopardを購入しようと思い,クリーンインストールをしなきゃなと思ったので,しばらくとってなかったバックアップを取ろうとしたところ,何度か Time Machinのエラー:バックアップの作成を完了できません。バックアップボリュームにファイルをコピー中にエラーが起きました。というウインドウが現れてうまくいかないので,あれこれググった結果,侍ズム:Time Machie_バックアップの作成を完了できません。-その2に到達して,ようはBackups.backupdbの2010-05-10-180318.InProgressという(YYYY-MM-DD-hhmmss.InProgress)ファイルを削除すればいいんじゃない,ということがわかったので,これをゴミ箱に入れ,消しといた方がうまくいきそうだなーと思ってゴミ箱を完全に空にするを選択したのが運の尽きで,削除する項目が130万を超えておりまして,二時間放置したのですがまだ120万件残っているということで,明日の朝までに終わりますようにと祈りつつ今日は帰宅します。ゴミ箱を空にするで良かったよね。でもこんな日もあるよね。 |
カレンダー
カテゴリー
プロフィール
HN:
渡辺隼人
性別:
男性
ブログ内検索
アクセス解析
カウンター
|