2010年10月26日

条件付きコンパイル引数でAccessとExcelのマクロを共通化!

条件付きコンパイル

今まで、ExcelとAccessの違いのせいでほんの少しだけロジックが異なるメソッドは別モジュールで管理していたのですが、その相違部分だけを条件付きコンパイル引数にすれば、モジュールを一つにできることがやっとわかりました。

たとえば、 Application.Volatile はExcelでしか呼び出せない関数ですが、これを書いてしまうとAccessでコンパイルできないので、以下のように
XLS_VBA = 999 をExcel側でだけに定義してやります。
compile_2010-10-26_222853.png

で、Accessでは使用できない部分に以下のように#IF〜#END IF で囲みます。

#If XLS_VBA = 999 Then
Application.Volatile
#End If

#IF〜#END IF の囲み方は、メソッドの内部だけでも、メソッドの定義全体、複数のメソッドに渡る場合でも可能ですので適宜適用します。


######
あと、VBA開発の指針のような記事を見つけた。
Excel VBAつかいまくってるからそろそろ腹にためてることをちょっと書き出すか - oe-roelのカオス落書き帳
おおむね納得するくらいに私も開発を経てきたようだ。
ただ、最近必要性が出てきたのがCallByName。 これがあると、かなり便利。

2010年10月25日

携帯アプリの作り方が甘いだけだがその後の対応はよい

iPhoneで人の情報丸見え…閲覧ソフト原因 : 社会 : YOMIURI ONLINE(読売新聞)

iPhoneとそのアプリは悪くない。
しいて言えばアプリ(クライアント)と、アプリ(ウェブ)の仕組みをわかって使うべきだったと思うけども。
それでもウェブアプリ提供側のヤマトのシステムの手抜きだ。

高木浩光@自宅の日記 - ケータイIDに添えて年齢情報も送信されるようになる?

高木浩光@自宅の日記 - ユニークIDがあれば認証ができるという幻想

Moba Photo Life!!: YOMIURI ONLINEに掲載された「iPhoneで人の情報丸見え」記事について、当事者から。

その後のヤマトの対応はよい
http://www.kuronekoyamato.co.jp/info/info_101025.html
http://zapanet.info/blog/item/2040

2010年10月15日

Access MDBのコンパイルをなかったことにする(デコンパイルの)方法

右クリックから簡単デコンパイル | YU-TANG's MS-Access Discovery

要するに
"MsAccess.exe のフルパス" "対象ファイルのフルパス" /decompileです。

私は、右クリックの送るメニューにバッチファイルを登録しました。

DECOMPILE 効果ありです。(ファイルのサイズに)

C言語などのプログラマからすると、VBAのようなスクリプト言語風のモジュールをコンパイルできたらそれは高速化するだろうなと、期待をするのですが、いかんせんMSのやることは中途半場で、いったんコンパイルしたあと、ソースコードをいじった場合整合性が取れない(未コンパイル)の部分があったりするとそれはそのままなのに、ファイルサイズは肥大化したままという状況が発生し、気持ち悪いのです。

一度コンパイルしたものはやり直せないのかと思いましたが、やっとのこと、デコンパイルをしてすっきりしました。

2010年08月28日

何時までたっても標準化されたドキュメントが無い

知るだけで天地の差が出る、テスト仕様書の必須項目&表現方法 − @IT自分戦略研究所

たたき台はあるけど、毎回様式を変えちゃう。

2010年08月04日

VBScriptをexe実行ファイルに変換する

VBScriptファイルをEXEファイルに変換する、デスクトップアイコンを変更する

vbs、js、wsfファイルを簡単にexeに変換するツール発見 - Domo-Domo

明日会社で試してみます。

2010年04月30日

2010年04月25日

システム開発契約書

システム開発契約 (契約書のツボ(4))

メモメモ。


@20110917_224331
システム開発に欠かせない契約の基礎知識まとめ - GoTheDistance

これもめも。

2010年04月13日

python(パイソン)入門チートシート

python入門チートシート - ナマアシタノム

パイソンっていうのは、イメージ検索してみて下さい(閲覧注意!)python - Google 検索

さて、Google App Engine のためには、Javaか、Pythonが選べます。やっぱり はじめから使える パイソンに何らかの理由を感じたいので、パイソンを選んで見ます。

チートシートで勉強。

AppEngineにどんなアプリが向いているのかを知ろう - ひがやすを blog

2009年11月07日

Cプリプロセサ

Cプリプロセッサメタプログラミングで、文字列系泥沼関数型プログラミング - 簡潔で覚えやすいタイトルを3秒で思いつく程度の能力

頭のトレーニングとして読む分にはおもしろい。

ここ数年Cは書いてない。

2009年10月09日

JavaScriptについて

http://d.hatena.ne.jp/mindcat/20091004/1254653934

メモ。

当ブログを「Java Script」で検索

細かいJavaScriptの仕様や習慣やテク集 - 三等兵

2009年09月10日

[Vb.net]Try 〜 Catch にWhenが使えるとは・・・

Try...Catch...Finally ステートメント(Try...Catch...Finally ステートメント (Visual Basic))


Try
[ tryStatements ]
[ Exit Try ]
[ Catch [ exception [ As type ] ] [ When expression ]
[ catchStatements ]
[ Exit Try ] ]
[ Catch ... ]
[ Finally
[ finallyStatements ] ]
End Try


こんな(Whenが使えるような)構文だったとはつゆ知らず。

これを活用する場面としては、.netの例外補足は サブクラス例外クラスでCatch句を書くと、そのスーパークラスを捕まえることができないので、When句のところで ex.InnerExceptionをひたすら調べてスーパークラスをチェックして該当していればTrueを戻すような関数を作っておくと幸せかもしれない。

この点に関しては実装が自然なJavaがいいけどJavaのThrowsは嫌い。

2009年09月07日

VB6から.net アセンブリを参照する方法。

.NETコンポーネントをVB6から使用するための方法

この方法はVBAでも使えることを確認。

ただ、やたらと制限が多いので、使い道を考えた上で必要なところだけに使うにとどまる感じ。

2009年07月28日

VisualStudio2008 開発ガイド

・VisualStudio2008 開発ガイド
http://www.microsoft.com/japan/msdn/vstudio/2008/tech/howto/VSGuide/

メモ。

自分にとってVS2008で開発する機会はずいぶんと先だろうけど。

###20090801_001754###
フリーの.NET用プロファイラを使ってみました(NProf, EQATEC Profiler) - ふにゃるん
パフォーマンス、ボトルネック計測に。

Chapter1 C# 3.0らしいプログラミングとは? − @IT

2009年07月06日

瑕疵担保

瑕疵担保の期間調整の交渉 - チョコっとラブ的なにか

メモ。

2009年06月26日

これはええんちゃうかなぁ :ExCella Reports

ExcelとJavaを連携させ帳票やグラフを作成するExCella Reports,ビーブレイクがOSSとして公開:ITpro

Javaってまだあまりいじったことないけど。使ってみたい。

2009年05月13日

エンバカデロ ボーランド

Borland と エンバカデロに関する記事 - builder by ZDNet Japan

コミュニティレター:エンバカデロ・テクノロジーズがCodeGearを買収

C++ Compiler 5.5/Turbo Debugger(C++Builder)

C++ Compiler 5.5/Turbo Debugger には 7、8年位前には本当にお世話になった。

2009年03月26日

Java SE コアAPI 使用コード例一覧

Java SE コアAPI 使用コード例一覧(オレンジニュース)

新たな視点で見直すことができる。

これからJavaの案件が増えてきそうなので重宝しそうです。

ソースコードにWhy(なぜ)を残していますか? - Fly me to the Galileo

2009年01月22日

全角カナを半角カナに変換できるようになったnkf

文字コード変換ツール「nkf」の最新版が公開 | パソコン | マイコミジャーナル

全角カナを半角カナに変換できるようになったとのことですが、今までそれができなかったことが驚きでもある。

AMDがプロセッサ価格改定、Phenom II X4 940 BEが早くも50ドルの値下げへ | パソコン | マイコミジャーナル

2009年01月16日

ADO(ADODB)の接続文字列サンプルの膨大な一覧

ADO Connection String Samples

これは圧巻。

非常に重宝すること請け合いである。

いろんなデータベース・接続方法がある。

2008年11月14日

[.net]System.BitConverter クラス

BitConverter クラス (System)

テキストファイルをバイナリ読み込みして、自前で全部処理しようと奮闘していた1週間。

読み取りのときにはBOMを無視したり、書き込みの場合にはBOMを復元したり、読み取りと書き込みのエンコードを異なるものにしたり。
いろいろ実現できるようにフレームワーク化した。

その時に、BOMを16進数でデバッグ表示させようと思った時にこのBitConverterクラスを以下の掲示板で発見した。
Re[9]: exeファイルを16進でリッチテキストboxに表示するには - C#、VB.NET、ASP.NET、C++/CLI、Java

こんなユーティリティー的なクラスまで備えているんだ、と少々感動して自前で作りこまなくて済んだことに感謝しつつここにメモする。

###BOMのありなし###
いつも GetEncodingでUNICODEのコードページを指定していたので、BOM付きのファイルができていた。
UnicodeEncoding クラス (System.Text)
の存在が何のためにあるのかやっとわかった。
BOMのありなしを指定できるようにするコンストラクタがそこには、ある。
そういう指定が必要ならこういう個別クラスをインスタンス化して使うべしということなのだ。

###UNICODEとBOM###
NN Space BLOG-NN空間ブログ: ユニコード5.1.0 UNICODE

NN Space BLOG-NN空間ブログ: Vista・文字コード

NN Space BLOG-NN空間ブログ: マイクロソフトの表記バグ?UNICODE のBOM は FEFF

2008年10月24日

プログラミングのポイント いくつかの反語

2008-09-22 - プログラミング日記オレンジニュース

基本的なところは気をつけているつもりだが、「ポリモーフィズム」でIFを減らすという技はまだ身についていない。

中途半端に優秀なプログラマが「正しいプログラミングテクニック」だと妄信しがちな3つポイント - 分裂勘違い君劇場

2008年10月06日

プログラムと1:1に対応するドキュメントを書くということ

IBMの問題はアメリカナイズされた老害 - ひがやすを blog

そういうことだったんだよねーと今更になって思うけど。

IBMという企業はやはり力があるというか。それでもやりきってしまう実行力がある。

2008年09月29日

やりたいことはたくさん歩けど

iPhoneアプリ開発関連情報 - もとまかのiPhone・iPod touch戯れ日記

歩けども歩けどもゴールは見えない。

###NASの現状###
NASのベンチマークが怪しくなってきました。
なぜだ? スコアのよかったX64XPで再測定したら書き込みスペックが下がりすぎだ!!!
これじゃあ、X64 Vistaと大して違わん。

2008年09月24日

Studio .NET 2003 ポスター ダウンロード

Visual Studio .NET 2003 ポスター ダウンロード

いまさらな感じはするけど、こういうポスターがほしかった。
.netのクラス、オブジェクトを俯瞰する感じ。

A3サイズに印刷して保管。

####Beckyが壊れた###
仮想マシンが壊れた・・・
圧倒的な安定性でWindowsを実行するんじゃなかったのかよ・・・
Braun マルチクイック プロフェッショナル MR5550MCA

仮想マシンなのに、やっぱりまた、再インストール三昧なのかな?

2008年08月28日

WSHでフィルタプログラム開発

WSH

ちょっと最近.netから離れて、VBS,JS,WSH,などに傾倒しているのですが、上記のサイトを読んでいろいろ気づかされることがあり、さまざまな意味でやる気が沸いてきたのである。

######
上記のサイト、メニュー構成が不可思議なので、すべての記事を読むのに苦労する。

2008年08月25日

Microsoftのバグとの戦い

第8回 「Microsoftのバグ」との戦い:ITpro

読み方に気をつけなければならない。

私は、Windows以外はよくわからない方だ。

現在macを学習中。

2008年08月05日

.net のクラスライブラリに VBSCriptからアクセス

Windows Script Programming: スクリプトから.NETのSystem.Text.StringBuilderを使う。

DotNetはDotnetからしかアクセスできないと信じ込んでいたので、CreateObjectでこんなに簡単に利用できるのが不思議かつ感動。

2008年07月11日

iPhone 3G

契約してわかった、iPhoneのさまざまな注意事項CNET

めも。

ゲームソフト会社から見たiPhoneの魅力--「ここまで整ったプラットフォームは世界初」:インタビュー - CNET Japan

めもめも。

livedoor ニュース - [iPhone]日本で旋風起きるか ネックは割高料金?

2008年06月24日

IBM DB2 UDB 日付の足し引き

日付の足し引き - ただぶろぐ

足すXデイで出来るらしい。

やってみた。

出来た。


これはものすごく感動。

DB依存だという気もするが使い勝手はよい。

IBM | DB2の基礎: 日付と時刻で遊ぶ

2008年06月02日

DTSを一括保存

DTSパッケージを保存する(SaveToStorageFile) - @Prog! - ASP.NET(C#) AJAX -

ただし、この方法で保存したdtsパッケージは、EnterpriseManagerから別名保存で構造化ストレージファイル形式で落としたときに比べるとサイズが異なり、これを再びSQLサーバーで開いたときにもなぜかかなり異なるものになっているので少々使えない。

LoadFromSQLServer もしくは SaveToStorageFile のオプションでどうにかコントロールできないかどうかとか、DTS.Package クラスではなくてDTS.Package2クラスを使ってみたりもしたけど結局目的にかなわず。

なぜなんだろう。

DTSの保存とロードは超面倒くさいので安全確実な方法で自動化したいのですが。

マウス操作をエミュレートするのが一番確実かもしれないとおもった。

2008年05月14日

そろそろ本気で学びたいJavaScript

[Think IT] 第1回:そろそろ本気で学びませんか? (1/3)

私もJavaScriptは基礎は抑えておきたいと何度も思っているのだが・・・NN Space BLOG-NN空間ブログを 「JavaScript」で検索

いやでも、最近Webアプリの開発案件ないし・・・。

2008年05月09日

文字集合 文字エンコード

文字コードの墓場 - しいしせねっと

NN Space BLOG-NN空間ブログ: ユニコード5.1.0 UNICODE

2008年05月07日

日付と時刻の表現方法

日付と時刻の正しい表現方法 - Web屋のネタ帳はてなブックマーク - ソーシャルブックマーク

ふむふむ。

2008年04月25日

ついつい仕事中にリンク先の記事を読みふけってしまった

インテリセンス付きの SQL エディタ - アジャイルプログラマの日常

ほかの記事も、私にとっては初にお目にかかることが多くてとてもためになりました。

今まではSQLエディタとしてはCSEを愛用していましたがインテリセンス付きの SQL エディタ は非常にものが少なく、かなり便利なアイテムになりそうです。ずっと探していたのに、なかなか見つからなかったのです。

2007年09月09日

「初級シスアド」など消えて試験科目が大再編

「初級シスアド」消える――情報処理技術者試験が大改革へ
もう一回受けなおす需要増だろうな。

1種、2種という言い方から今の試験科目(基本情報、ソフトウェア)になったのが大体7〜8年ほど前だったような。

まあ時期相応の流れと見るか。

asahi.com:IPA、受験者減少に歯止めを――情報処理技術者試験の抜本的改正案を発表 - e-ビジネス情報(提供:BCN) - デジタル

・おすすめ楽天ショップ1:trendyimpact楽天市場店
・おすすめサプリショップ:iHerb.com
・おすすめ楽天ショップ2:上海問屋
Powered by さくらのブログ