2016年12月26日月曜日

Cドライブの容量がどんどん減っていくSSD、ウインドウズ7

数日前にmymusic内にitunesの曲たちが3ギガ以上ある事に気づいてこれを設定から別のドライブへ移動、一気に3,3ギガくらい空きができたのに・・・・

もう600mbになってるぞ!????

本当にいい加減にしてほしい。数ヶ月前からCドライブがちょっと目を離すとすぐに空き容量不足になり警告が表示される。その都度いろいろ対策したり苦労して容量を食っているフォルダが無いか探して上記のようにやってきたのだが・・・

今現在のCドライブのSSDは容量112ギガだっけ?表示上は109ギガになってるけど。
これの倍の250ギガくらいのSSDは自作をしようとしてとん挫しているものがあるから換装はできる、できるのだが・・・・めんどうでやっていないのだw

だって、PC常時立ちあげっぱなしだしこのPCははじめて自作したやつで配線がごっちゃごちゃで・・・・w

そんなわけで年末年始の連休にでもちょっと気合入れて換装しようかなあと、それまではこの応急処置で持ってくれるだろうと思っていた矢先のこれだものなあ・・・。

と、愚痴を入力している横でローカルディスクのプロパティの空き領域の表示がなぜか2.32ギガまで回復wなんだこれ・・・。

ネットで検索すると出てくる対策はだいたいもうやってあるのだ。

システムの復元のバックアップ領域が容量食うってとうの昔に別ドライブへそれを変更しているし

ディスクのクリーンアップも定期的にやってるからすでにやっても数Mも減らないw

履歴などもまめに削除しているし

こんな状態で250ギガに換装してもあっという間にまた容量がひっ迫しそうで怖い。

2016年11月26日土曜日

VBAユーザーフォームに置いたコントロールの配置を整理する

CTRLを押しながら対象をクリックしていって右クリックで整列ですね。
白い□のコントロールがついた選択線で囲われたのがメイン、それに合わせて位置やサイズなどが変更されます。クリックでその主となる対象が移動できます。


これ僕のやり方がまずいんでしょうけどコントロールが増殖しちゃうんですが(笑)
整列作業をしているとなんか増殖しちゃうんですよね、これすごい困ってます。

あと、こういう体裁を整えているときにコントロールをひとくくり、ひとまとめにしたいと思ったりした時に使う「フォーム」、これ大抵あとから使いますよね?
そうすると最前面に来ちゃってあせります(笑)

こういうときは一旦貼りつけたボタンなんかを切り取ってフォーム上に移植手術しないとダメですね。大変めんどいです。

エクセルからIE操作やデータベース操作したいと思うと

htmlやjavascriptの知識が必要になってきますよね。

で、しょうがないなあと面倒だけどまあ基本的なところを見ればいいやと思って見ていたら・・・案外昔勉強していて途中で挫折した知識が残っていてびっくりしました(笑)

やっぱり若い頃の記憶っていうのはよく定着していますね。今この歳でhtmlだなんだって1から勉強していたら本気でギブアップしました僕はそんな根性ない(笑)

javascriptってJAVAに近いんですよね?確か。で、C#とかも見ていて思い出したからこの辺にも繋がるんだろうし復習して無駄はないかなと思ってちょっと楽しい気分になりました。

もちろん家に帰ったらゲームとかしちゃうんですけどね(笑)




インデックスが有効範囲にありませんエラーがすっかりおなじみ

これがおなじみになっただけでもずいぶんと成長したなと自分を褒めてるんですけどね(笑)
このエラーはVBAやってると本当に頻繁に見ます。
多分中級者より上の人は見ないんじゃないかと思う。でも、僕のような駆け出しの初心者は本気でこれが出まくります(笑)

このエラーが出るっていうのは要は対象がありませんよって意味・・・だと自分では思ってます。違ったとしてもそっとしておいてください(笑)初心者のうちからあまり例外や少ない事例を詰め込んでも嫌になるだけだから漠然とあってれば僕は充分です。

たとえばそのシートをアクティヴにするという命令を出したのに肝心なそのシートが無かったりとかそんなんで起きます。確か、非表示にしててもこれ出たかもしれない。
シートの非表示とか初心者はあまりやらない方がいいです。一気に面倒くさくなるから(笑)

で、今まさにこのエラーが出ているのだけれど・・・・

マクロを動かしているのは別のブックで、それとは別のブックをアクティブにしようとして
workbooks("○○.xlsx").activate
ってやるとここで「インデックスが有効範囲にありません」って出るんですよね。

それで困るのは出ないときは出ないんです、普通にそのまま動いちゃう(笑)
これが本当に困るんですけど・・・。100%動かない、問題の個所を修正したら100%と正常に動作するっていうなら明確なんだけれど、たまに動いて、大事なとこで動かないでってやられると初心者にはどうにもならない。
自分だけが使用するものだったらそれでもいい、というか人に使わせるものを作ろうとすると一気に労力が5倍くらいになりますよね(笑)
自分だったらこんなトラブルが起こったらもうここは手作業でやるからいいんですよ。
でも人、とりわけエクセルの知識がほとんどない人にも使ってもらわなきゃいけないとなると・・・・もう厳しいです。

2016年11月20日日曜日

エクセルVBAからメールを送れるようにしたい

アプリを作っていて思いついたのだけれど、そもそもが会社にいなくても勝手に起動してタスクを実行してくれるプログラムだから、実際に動いてる時はそばで監視できないんです。既製品だったらちゃんと動くという期待が当然出来るけれど素人同然の自分が作成しているしイマイチ不安だなあと思っていて思いつきました。

メインプログラムの最後にメール送信するサブモジュールをくっつけておけば少なくともそこまでは動作してたという確認が出来るのでこれは良いアイデア!!と思いぐぐったらありました。

エクセルVHAからメール送信のDLL

で、僕の場合GメールでやろうとしてるのでGメールのSMTPサーバ名やポート番号なども調べるとこのページが出てきました。

実はまだ実証してないです。DLL必要という事は各端末にこれ入れてもらわなきゃいけないという事で多分それは難しいかなと思って。だから自分のものだけにカスタマイズして入れようかなと最後の最後にくっつける感じで。

同様に自動実行プログラムが実行中の間に音楽を流すというアイデアもあったのですが、実行するとやけに重くなるのでちょっと保留。もしかすると自宅のPC環境のせいかもしれないし。




2016年11月17日木曜日

エクセルでマクロを組んでもいつもは正常に動かない!?

原因が分かってると対処のしようがあるんですけどね、なにもいじってないのに、コードは同じなのに違う実行結果になるときが一番ストレス溜まるしプログラム書いてて嫌になります。

それでも経験から得た対処の方法を備忘録として残しておくと・・・


とりあえずステップ実行してみる。
該当マクロのところにカーソルを置いてF8で一行ずつ実行していってみる。これが本当に便利でかなりいろいろバグや不具合が取り除けます。

いらない行を削除する、コードの記述を各ステートメントごとにきっちりインデントする。
これは今回痛感しました。if節やfor節の入れ子が上手くいってないとビックリするくらいヘンな動きします(笑)今回はselect caseのいくつかのステートメントが飛び出していたらそこが実行されないでびっくりしました(笑)

なんというかそれぞれのモジュールごとにかなり分かりやすいようにコメントを残してさらには囲っておく。
今回///////////これで囲いながら作ったらあとでかなり見やすいしメンテナンスしやすかったです。
なんでもそうだけどメンテナンス性を高めたいならなるべく可能な限りシンプルにするべきかと思います。あとパーツごとに分ける。

変数や宣言、スコープなど基本的な事をしっかり踏まえて作る。

このサイトをさっき読んでいて、本当にこの辺の事を頭に入れてないと余計な時間とストレスがかかります。僕はブレイクポイントとイミディエイトウィンドウは全然使いこなせていないのだけれどこのへんも上手に使えばさらにストレスなく楽しくプログラミング出来るのかも。

もう本当に、こんなのが作りたい!!→あ、こんな感じにすれば実現できるかな?→コードが閃いて一気に書く。ここまでは本当に楽しいのだけれど、そのあとの不具合を直していくのがどうにもならないくらい苦痛で嫌いです。これがなければ趣味としてちょっとした開いてる時間にやったりして捗るのだけれど。

ひとつつぶす、また動かない、ひとつ潰す、今度は関係ないところが動かないの繰り返し。

まあでもやはり1回作った次の2つ目は自分では気づかないけれど各段にレベルアップしています。そして1度作ったモジュールというかサブルーチン?は自分のライブラリにして何度でも利用できるのでそれはすごい快感(笑)



2016年11月8日火曜日

VBA 行の挿入

Rows.Insert メソッドを使う。

1行挿入するならRows(1).Insert
2行挿入するならRows(2).Insert
3行挿入するならRows(3).Insert
4行挿入するならRows(4).Insert

VBAをマスターして人生変えたい!!

というかそのくらいの勢いで自分を奮い立たせて頑張らないと家に帰ると本当にやらない(笑)

加えてブログで衆人環視的にやらないと・・・、いやいいわけですけど肉体労働を10時間以上してそこから家でもこういうのって本当にきついんですよ?もう若くないし(笑)

さて、2週間ほど放置したらすっかり忘れてしまった(笑)
もういつもの事だけど・・・。

なんでこういうのって時間開くと綺麗さっぱり忘れちゃうんだろう。
それがわかってるから自分なりに結構細かくコメント残してるんだけど・・・
そのコメントが意味不明(笑)

オブジェクトとかその辺もブログにメモしておこうと思ったのだけどすっかり忘れちゃったよ(笑)

とりあえずHTMLやjavascriptなんかもやらないといけないのだけどこれは必要最低レベルのものを納品するには優先順位下がるから後回し!!

ソースを読んでいて面倒なのいちいち例外処理記述されてるじゃない?まあしていて当然なのだけど、理解しようとしている人間が読むと本当に面倒。

ブロックブロックごとにわけてくっつけたり必要だったらくっつけなかったりしてやっていきたいんだよな。ifよりcaseで条件分岐するのが好き。
forをいりこ10個くらい作ったら修正してる時にどこがどこだかわかんなくなったのは大きな反省点。ちゃんとインデントやんないと本当に分からなくなる。

あとでいろいろ流用できるように個人の標準モジュール集を作ってるのが割と快感(笑)






2016年10月2日日曜日

88サーバserverの設定

契約しお金の決済が終わるとすぐにメールが送られてきます。

それにファイルが添付してありまして解凍すると

「サーバ情報」なるテキストファイルになります。

サーバのURL,wordpressのURL、FTP情報、メールアドレス管理画面情報、DB情報、ネームサーバ情報などなど必要な事が簡潔に記してあります。

あるのですけどね・・・・

僕みたいなこれがはじめてのレンタルサーバ!独自ドメイン!!って人にこれじゃさっぱりわからんのですよ!!??(笑)

ぐぐってもあんまり情報ないし、めっちゃ苦労しましたがこれから88サーバでやろうとしてる人の助けにちょっとでもなればと備忘録を残します。
※なお、記載に間違いがあっても責任取れません(笑)

最初にネームサーバを設定しなきゃいけないようです。
僕みたく別のところ、まあバリュードメインなのですが(笑)別のところでドメインを入手しドメイン持ち込みで来るとちょっとややこしいのかも。

そのドメインを買ったところのサイトに行って設定しなきゃいけないんですね。
僕の場合はバリュードメインに行ってネームサーバの設定というページで
1つめと2つめのDNSをサーバ情報に載っていたdns1,dns2に変更。
※もし間違っていたら大変だから元の情報はメモっといたほうがいいのかもしれないです。

それでワードプレスにアクセスしようとサーバ情報にあったワードプレスのURLにアクセスしても出来ないんですよ!?確か契約の時にワードプレスをプリインストールしてもらってるはず・・・CMSインストールとか言うボタン押してもインストール失敗するし・・・。
これで焦っちゃって悪戦苦闘しつつも犬の散歩行ったりしてたのですが(笑)

結論からいってネームサーバを変更したらしばらくアクセスできなくなるのかも。

2時間くらいしたらアクセスできました(笑)

でもこれでまた大変で

「5分でできるWordPressの有名なインストールプロセスへようこそ!」

なんて日本人の僕には何?何なの!?ここはどこなの!?みたいな文章が出てまたびびりまくり(笑)

サイトのタイトル、ユーザー名、パスワード、メールアドレスを入力し「wordpressをインストール」ボタンを押したら普通にインストールしワードプレスの管理画面になりました。ここで入力する内容は88サーバのユーザ情報とは全く別で大丈夫です。
あとからいくらでも修正が出来るようだし、それなりに考えて入力すればOKでしょう。








2016年9月19日月曜日

xyzドメイン新規は安いが更新高い!!

偶々先ほど見て気付いたのだけれど、xyzドメインってだいたいどこでも安く売っていてついついその安さにつられて買ってしまう僕のような人も多いと思います。

でも、更新がめっちゃ高い!!!

100円くらいでバリュードメインで新規で買ったのですが、1年後の更新費用が1598円!?

ちなみにもう一つ持っている.netだと更新1382円。
買う時は.net多少高いですけど、そんな多少の違い一度の更新で逆転しちゃいますよ!?

僕の場合これもう仕方ないけれど、これから独自ドメインを入手したいという人はそのへんの更新費用も考慮した上で買わないと損をします。
気を付けてくださいね。


2016年7月23日土曜日

2年前のタブレットでもポケモンGOできたYOGA TABLET 8 59388458 SIMフリー

これだけ世間で全世界的にあおられたらそら誰だってやりたくなっちゃいますよ(笑)
ポケモンGO、日本でも昨日7月22日金曜日から配信が始まったようです。

会社の意外な人までダウンロードしてたので僕も空き時間を使って落としてみました。

というか、YOGA TABLET 8 59388458 SIMフリーだとアンドロイドのバージョンが古いらしくポケモンGOできないらしかったのでフォームウェアのバージョンアップをして・・・これも古い機種だからバージョンアップ自体が出来ないかと心配でしたが何度か出来ました。ちょっともっさりになったど(笑)

アンドロイド4.4以上の新しいものじゃないとダメです。アイフォンであれば5とかなら平気らしいです。

まあ、でも僕がこの記事を書こうと思ったのは
もしガラケーしか持っていなくてポケモンGOをやりたいけどできない!なのでポケモンGOができる安い端末を探しているという人がいたらYOGA TABLET 8 59388458 SIMフリーでもいいんじゃないかと。

このタブレットのスペックはこのページでどうぞ。
タブレットだからバッテリーも長持だしいいと思うですよ。
あ、でもメモリ1ギガだ。これがもっさりの原因か(笑)

でもマルチタスクをやりすぎなければとりあえず平気ですけどね。

ああ、僕はこのタブレットに格安SIMを差して運用してるんですが
そういった各社格安SIMで運用すれば私と名時IIJなら月972円で3ギガだから
ちょっと調べた限り充分のデータ通信料が確保できるかと思います。

今一番安い店ならこのタブレット17800円送料無料で買えるようなので多分これより安い値段の端末って私がネット上で見た限りではなかったです。








2016年5月10日火曜日

エクセルで会社のアプリ制作4

とりあえずギリギリ納期に間に合わせたけど、GWでばっちり休んじゃって完全に脳みそからVBAの知識が抜け出た(笑)

そろそろバグフィックスやらんといかんなと起動させて手順どおり動かしてみると・・・

序盤も序盤のところでエラー・・・・おいおい。

エラーメッセージが「selectメソッドが云々」て出る。

知らなかったんだけど、シートを非表示にしてるとselectは使えないのね。
代わりに.activate使うと問題なく動く。

これだけじゃないんだけど、やっぱり自分でただ趣味でシコシコやってるよりも締め切りに追われてひーひー苦しんでやった方がスキルは身に付くと思った。
まだまだわからないことばっかりだけど、自分でスライムと死闘を続けるところからドラキーと渡り合うくらいになったと思う。つまり大してレベル上がってない(笑)
でもでも、装備だってひのきのぼうからこんぼうくらいにはなってるはず!

この記事は開発日誌として自分の為に残してるものだから自分さえ後で見かえせりゃいいんだけどさ。

ついでに初心者にありがちなんだけどしょっちゅう無限ループしちゃう(笑)
最近のパソコンでよかったよ。無限ループって昔はすごい怖かったはず。昔は初心者すぎてあまり怖さが実感できないけど、自分がしょっちゅう無限ループをやらかすようになってパソコンの進化に感謝してもしきれない(笑)

ていうかプログラムっていくつかのパターンを覚えたら結構戦える気がするんだ。
今無限ループから脱してひとつエラー処理を実装した。

if節をその条件が真になった時にそれ以上進まないようにしたかった。
lavelとか苦し紛れに使ったらさらに無限ループするし(笑)
結局なんとなく閃いたend sub とかexitとかそんなんなかったっけ?とぐぐったら
exitステートメントを発見、やってみたら見事想定した動作をしてくれた。

つうか、人生でここ最近やってるゲームの上位に入ってるエクセルが。
面白いんだけど、疲れるしめんどくさい方が強くてねえ(笑)






2016年4月19日火曜日

エクセルで会社のアプリ制作日記3

頭の中で考えていてもいまいち良いアイデアが浮かばない。
ユーザーフォームを出して実際にコントロールペタペタ貼っていってそれとなく、まぁまぁ思い描いていたようなのが配置できた。

月曜から土曜までので同じもの――タブストリップを使ってみた。
そこにラベルやらテキストボックス、スピンボタンを貼りつけていき――
これを総ての曜日分やるの?まじかよ・・・とうんざりしながらタブを変えると・・・

あら、他の曜日にも同じものが配置出来てる!?ラッキー!!というかこら便利だわ。

ユーザーフォーム上のテキストボックスなんかに入力してもらった数値を次に開いたときにも保存できて表示できないかと思ったけど、アンロードされちゃうと消えちゃうみたい。どっかに数値保管しておかないと。シート上でもいいけど。

タブストリップでタブを増やす時にcaption以外にアクセスキーとコントロールヒント文字列とかあって????だったんだが

コントロールヒント文字列っていうのはそこにマウスカーソル合わせると出るヘルプテキストみたいなやつ?ググっても全然出てこないから分からん。
アクセスキーはこのページの内容で合ってるのかな?ふむふむ、設定しておくと自分がそのテキストボックスへフォーカスしたい!って時にビタッと合わせられるのか。便利だけどもう今さら出来ない?きっとどっかしらで再編集できるんだろうけど、タブ作るとき以外でどこでそれを表示するのかわからん。

つうか、本当に重くなってダメだ。まともに文章打てないから今日はここまで。



エクセルで会社のアプリ制作日記2

もしかすると1から作り直しかもしれん、糞ー・・・というか今から一から作り直していたらとてもじゃないが納期に間に合わない。
なので見た目だけを表面上変えてコアは一緒にする。linuxからヒントを得たw

備忘録がわりの記事なのだが、なぜかこのエクセルファイルと同時に開いているとマウスポインタが重くなって記事を書きづらい。

別シートの値を参照するのがどうも上手くいかないで昨夜は不貞寝した。
どうも参照する先のセルが書式設定で文字列になっていたようだ。これを標準に戻したら上手く参照できた。
参考にしたページ
でもこれだとまずい気がするんだよな。別の数式がこのセルの値を読むときに数値じゃなくて数式が入っていてエラーになるような気がする。だからこそこれを文字列にしてあったんじゃないか。
今ソースを編集してステップ実行して見たら・・・普通に値渡し出来てるじゃん(笑)
なんだよ、じゃあ安心して全部セルの書式設定変更できるね。




2016年4月13日水曜日

エクセルで会社で使用するアプリづくり日記

本当はlinuxと関係ないし、別のブログにでもした方が良いのかもしれなけれど・・・
今ちょっと諸事情あって、主に金銭的な諸事情があって(笑)linuxマシンが活動休止中で・・・。なので当分このブログの記事が更新されることはなく、にもかかわらず、筆者自身全くこんなの誰も観ないって認識のもとやっていたブログなのだけど案外閲覧者が各記事満遍なくいるようで・・・ならば、ブログタイトルとずれちゃうけどまあ、PC的なつながりあるしここに日記書かせてください。

ていうか、会社の本当にど素人の私がなぜか作ってるんだけど、ど素人だから忘れちゃうのよ(笑)プログラムとかかじった事ある人は多分共感してくれる人もいると思うのだけど、一度理解してもちょっと間が開くとすっかり忘れちゃって自分が作ったアプリなのにもう二度と同じものが作れないって事なんてざらにあったり(笑)

なので後で見返せるように、まあ個人的な日記です。

エクセルのVBA使ってちょっとキーシミュレートして勝手に動くやつ作ってるけど・・・今6割くらい出来てるんだろうか?
これ会社で配布する時もソースは見れないようにする。だってすっごい小学生みたいな記述で恥ずかしいし。

javascriptでデータベースに接続するのもやりたいけど、今それに手を広げたらもうどうにもならなくなっちゃうから我慢して今のこれをとにかく頑張って組もう。