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円送料無料で買えるようなので多分これより安い値段の端末って私がネット上で見た限りではなかったです。