2020年9月26日土曜日

accessで連番を振るにはdcount関数でカウントする際、idのようなユニークキーを持つフィールドが必須だ

 Accessで連番を振るには条件にあう行をカウントする為、dcount(*,テーブル 名,連番を振りたい条件)と言う感じで書くことになるが、連番の条件にidのようなユニーク(値が重複しない)なキーがなければ、そのようなキーを持つフィールドが必要になる。これがないと、連番を振りたい条件に合致する行が複数ある場合、順番に番号を振ることができない。

 ここで一息のコーナー。超簡単な枝豆の作り方です。
 まず、枝豆を洗う。
 次にフライパンに枝豆+水(枝豆2袋なら70cc)を入れてフタをして中火で7分ぐらい蒸す(ツマミぐして、食べ頃を見極めるのが肝要)。
 時々、かき混ぜる。
 余った水分を切り、最後に塩をツマミ振って、これで完成だ。

2020年9月18日金曜日

Accessで連番を振るDcountで日時データを指定する際、型エラーを避ける為に”#”で挟め

 Accessで連番を振るDcountで日時データを指定する際、型エラーを避ける為には”#”で挟んでおく。 
 即ち、Dcount( "*", "テーブル 1","ID <= " & [テーブル 1]![ID] & " And [日時データフィールド] >=" & "#" & [ テーブル 1]![日時データフィールド[ & "#")としておく。

マイクロソフトはAccessで日時データを扱う時には#で挟むという「おまじない」
を強制するので、忘れないようにするしかない。
  さて、ここで一息のコーナー。  これまでのやり方にはこだわらず、新しいやり方を探求するといいことがある。
  トウモロコシは茹でるよりもレンジでチンすると、美味しくなる。やり方はこうだ。まず、塩水が沁みやくする為、皮を1枚残し、塩水をまぶす。次に、ラップに包んで600wで2分。そして、反転させてもう2分で完成だ。
 これまで食べたことがないくらい、美味しいトウモロコシができるよ。

2020年8月2日日曜日

accessで特定の条件に一致するレコード数をカウントしたいのであれば、sum関数とIIf関数でできるよ

 MS accessを使っていて、特定の条件を満たすレコードの数をカウントしたいことがある。
 そんなときには、sum関数とIIf関数の組合せで実現できる。
 例えば、レコードに「氏名」、「年齢」、「性別」のフィールドがあるとします。
 年齢が60以上の数をカウントしたい場合、クエリのデザインで、名前フィールドに60才以上の数: Sum(IIf[年齢]>=60,1,0)という式を設定し、Σのマークのクリックで集計クエリにし、集計フィールドには「演算」にする。
 このSumで合計、IIfで条件を設定すればよい訳です。

2020年7月13日月曜日

accessのODBC接続でSQLサーバからデータ取得するときにVBAでログイン

 accessのODBC接続でSQLサーバからデータ取得するときに、SQLサーバの参照の度にログイン画面がでてくのは、ウザイ。VBAでログイン処理を書いて自動化したい。つまり、ログイン画面をポップアップさせずに、VBAでODBCでSQLサーバにログインし、データを取って来たいのだ。  よくあるやりかたとしては、ADOコネクションを生成し、DB接続情報をセット(ODBC)、接続をOpenするというrecordsetでデータを取得するというアプローチで、1レコードずつ処理することになるので、面倒くさい。
Set objConn = CreateObject("ADO.Connection")
objConn.ConnectionString = "DSN=DSN1;UID=user1;PWD=password1;" 
objConn.Open
 SQLサーバのテーブルをリンクした、選択クエリを作成している場合、SQLサーバのテーブルへアクセスするのにログイン画面がでてくる。 そのログイン画面を出さないためには、Docmdを使った「簡単な」方法があるのだ。 以下のコードを標準モジュールのどこかに記述してやる。
DoCmd.DeleteObject  Actable,"dbo_TBL-A"
DoCmd.TransferDatabase acLInk,"ODBC Database", _
 "ODBC;DSN=dsn_name;UID=user_id;PWD=pass_wd; _
 & "DATABASE= database_name",acTable,"tabl_name","dbo.tbl_name"
 このテクニックのミソは、TransferDatabaseでSQLサーバのテーブルへのリンクをログイン画面をださすに接続できる、つまり、自動的にコード内で密かにログインしているところだ。そのためにTransferDatabase acLInkの後ろにDB接続情報を記述している。そこがミソなのだ。ちなみにこの文字列はACCESSのリンクテーブルにカーソルを持っていくと、ヌッと表示されるのだ。試してもらいたい。  そして、SQLのテーブルを参照した選択クエリを実行し、EXCELにエクスポートするという2つの操作を1つのDocmdで実現できてしまうのだ。実に効率がいいね。
Dim file1 As String
Docmd TransferSpreadsheet acExport,acSpreadsheetTypeExcel12Xmi,"SELECT_QUERY_USING_SQLserversTable",file1,True

2020年5月20日水曜日

何故かTinyCOREに惹かれる

軽い。早い。何故かTinyCOREに惹かれる。
 rxvt-unicode -fn "xft:monospace-10" -letsp -5
urxvt -fn "xft:monospace size:10" -letsp -5

この投稿もTinyCORE+Google 入力ツールだ。いろいろ検索してたら、どこかのページでこれをゲットした。
 pango-view --markup --rotate=270 --gravity=east test.txt&
test.txt の中身は
 
ほんじつ
本日は、晴天なり

2020年5月1日金曜日

TinyCore V11 seamonkey

TinyCore V11 とseamonkeyで、YouTubeやYahooニュースのFlashvideoがみれるようになった。それはSeaMonkeyのおかげだ。PaleMoonもFireFoxもOperaも全部だめだったけれど、最後にSeaMOnkeyが音を出してくれた。これで完璧です。

2020年4月25日土曜日

TinyCore v11.1 how to save the volume of alsa master volume

TinyCore Liunxでalsaの音量をセーブするためには、.xsessionにamixer set 'Master',0       90% unmuteと書き込んでおけばよい。そして、filetool.sh -bを忘れるな。
そして、このコマンドでスピーカーから音がでるか確認する。
speaker-test [-Ddefault:1] -c2 -t wav -l1