これをround関数で四捨五入すれば、23~37までの乱数が作れる。vbaの関数=int(rnd*(y-x+1)+x)これでxからyの間で乱数を作れる。ここで使われるintは「小数点以下を切り捨てる」と言うとちょっとおかしいのかな。「整数部分を取り出す」とか「小数点部分を取り除く」の方が良いのか。rnd*15で0から15未満の数を作り、23を足すと、23から38未満の乱数ができる。これをintで整数部分を取り出してやれば、23~37の乱数が出来上がり。vbaではround関数を使わずにint関数を使っているところが多いけど、なんでなんだろ。vbaのround関数は確かに、ワークシート関数のroundとは挙動が異なる。いうか、普通にこっちでも問題ないのでは?ただ、vba関数のroundをちゃんと使う場面はなかなかないと思うし、正確に使ってる人はあまりいない。vbaのround関数は「銀行型丸め処理」になってるから。roundではなくintを使っているところが多いのかも。四捨五入するかどうかは結果が偶数になるかどうかで判断される。四捨五入の結果が偶数なら切り上げるけど、奇数なら切り捨てて偶数になるようにする。「0.5」→「0」、「3.5」→「4」、「4.5」→「4」といったようにね。ここで、次の数の合計は?「0.5」「1.5」「2.5」「3.5」「4.5」「5.5」「6.5」「7.5」「8.5」「9.5」はい、50です。これを四捨五入してから合計してみましょう。「1」「2」「3」「4」「5」「6」「7」「8」「9」「10」はい、55になります。続いて、銀行型丸め処理による四捨五入をしてから合計してみましょう。「0」「2」「2」「4」「4」「6」「6」「8」「8」「10」はい、50になります。なんか、単純に四捨五入するよりも、元の数を合計した値に近くなる。いうかこの場合同じになる。銀行型の方が、元の数の合計に近くなる傾向にあることがわかる。そんな特性を必要とする人が、Excelのvbaユーザーに、割合としてそれほど多いとは思えないけど。それでも、そんな違いがあるから、みんなintで処理してるのかもしれないね。した場合、結果は「1.2」となる。別に「x.5」である必要があるわけではなく、四捨五入をするための比較検討をする数値が「5」であるかそこがポイント。この結果は「1.1」になる。銀行型だということを覚えておいてそんはないでしょう。してもvbaでワークシート関数のroundを使いたければ、WorksheetFunction.Round(xxx.x,y)とでもしてください。いったMSのサイトで。ついでなのでPHPではランダムな値をどう求めるか。rand(23,37)これで23~37の乱数が出ます。ついでで、FileMakerでのランダム。全レコードからランダムにあるひとつのレコードを選ぶ、といったような場合にはこんな感じ。takaFileMakerでMySQLに接続するまでの流れ2014年02月18日<とりあえず、ターゲットはMySQLを使っているWordPress>どんなことに使えるのか、とか、どんな目的のためにこうするのか、は二の次。FileMakerでMySQLにつなげてみたかっただけという・・・そんな、目的と手段が逆転しちゃった状況の流れをメモ。ダウンロードしインストール。登録>ここでも注意点としてアドミニストレーターも32bit版を使うこと。C:WindowsSysWOW64odbcad32.exeコンパネから辿り着くアドミニストレーターは64bitなので、それでシステムDSNを設定してもエラーではじかれるよん。アドミニストレーターを開いたら上部のタブ「システムDSN」を開き、右側の「追加」をクリック。すると、下図のウィンドウが新たに開かれる。Driver」というのがあるので選択して「完了」さらに、下のような別ウィンドウが開く。そのユーザーのパスワードといった内容で入力が済めば、「Database」のプルダウンに接続できるデータベース名が一覧される。表示されない場合はどこかが間違えてるでしょう。一通り問題なさそうなところで「Test」ボタンをクリック。接続に問題がなければと表示される。<FileMakerでの設定>とりあえず、空のデータベースを用意してみた。「データベースの管理」で「リレーションシップ」を開く。左下の「テーブル/リレーションシップ」という項目の一番左のアイコンをクリックすると別ウィンドウが。データソースのプルダウンメニューから「ODBCデータソースの追加」を選択。登録したデータソース名を選択する。「続行」を押すとまたまた別ウィンドウ。変更は加えず「OK」にしてみた。別ウィンドウに切り替わって「テーブルを指定」WordPressの中心となる「投稿記事」は「wp_posts」というテーブル名。(この画像では’01’がついてるけど、これはマルチサイト化しているからかと)で、「OK」を押すと「データベースの管理」に戻ってくるけど、そこには「wp_posts」というテーブルが追加されている。(この画像では2つのテーブルを追加してある。マルチサイト化してあるので・・・)とりあえずは表示するだけってことで、ここでいったん「データベースの管理」は閉じましょう。「レイアウトモード」に戻ると、こんな感じ。このままじゃアレなんで簡単に”らしい形”にしてみる。タブコントロール使ったりもっと見やすく作りたいところだけれど、それはまた後日。<とまぁ>こんな感じでMySQLを使う代表格とも言えるWordPressの「投稿記事」をFileMakerで扱えるようになってしまうわけだ。チキンかつ知識不足なため、FileMakerを通してWordPress(MySQL)のデータをいじっていこうなどとは今のところ思ってないけど、連携できるよ、って考えるとそれはそれで面白い。Connector/ODBC」をアップデートしたらデータベース(MySQLサーバー)に接続できなくなった。Connector/ODBC」をアップデートした。Connector/ODBC」が扱うパスワードハッシュ形式が4.1以降で変更され、41バイト長の値になったため。MySQLサーバーが4.1以上であっても、それ以前から使い続けている場合、ユーザーのパスワードが4.1よりも前の形式である16バイト長のままとなっていることがある。<対応>まずはサーバーのバージョン確認。4.1よりも古いということはない?もしそうであれば早急にアップデートを行う。4.1以降でも最新版でない場合にはアップデートを。最新版である場合はユーザーパスワードが16バイト長のままの可能性が高い。下記にてパスワード長を確認。mysql.user;16文字なら16バイト長で41文字なら41バイト長なのでわかりやすい。41バイト長のパスワード(ハッシュ値)は「*」(アスタリスク)で始まる。Connector/ODBC」をアップデートしてつながらなかったのは、扱うハッシュ値が16バイト長から41バイト長に変わったため。かかわらず、サーバーに設定されているユーザーパスワードのハッシュ値は16バイト長のままだから。いうわけで、下記にて41バイト長に変更しよう。1」なる設定が書き込まれていることがあるらしい。この記述があると、常に16ビット長でハッシュが生成されるので、41ビット長で運用に問題がないようであればコメントアウトしてMySQLを再起動。複数のクライアントがいて、そのどれもが41ビット長で問題なければよいのだけれど、16ビット長なクライアントがいたらそれらもアップデートしてあげないとイケナイ。ま、個人レベルで使ってるような場合には手間にもならないけどね。Connector/ODBC」をインストールしてもデータベースに接続できない。Connector/ODBC」を選んでも、エラーが出て接続できない。Connector/ODBC」の再インストールや設定、接続テストを繰り返しているうちにMySQLサーバーからブロックされてしまった。<エラーメッセージ>FileMakerで接続しようとした時に表示されるエラー。「ドライバーとアーキテクチャの不一致が含まれています」また、MySQLサーバーからブロックされた時のメッセージは以下。Connector/ODBC」をダウンロードしインストールした。アドミニストレーター」を開き、設定を行った上記の設定でFileMakerからレコードのインポートを行おうとしたが失敗。Connector/ODBC」をインストールしてしまっている。アドミニストレーター」を使って設定してしまっている。Connector/ODBC」の32bitやら64bitやらは、使っているWindowsについてではなく、使っているアプリケーションについて。Connector/ODBC」を使う必要がある。Connector/ODBC」も合わせて32bit版を使わなければならない。アドミニストレーター」で接続に必要な設定を行うが、コンパネからたどっていくと起動するのは64bitドライバのためのアドミニストレーター。アドミニストレーター」にも32bit用を使って設定する必要がある。これはコンパネからは起動できないので、以下の場所より起動する。「レコードのインポート」→「ODBCデータソース」がちゃんと使えるようになる。接続テストを一定回数行うと、MySQLサーバーからブロックされてしまう。-p」として、クリアしてあげましょう。takaインスタントWEB公開が使えない2014年02月16日<トラブル内容>インスタントWEB公開が使えなくなった。<エラーメッセージ>ネットワークスタックを初期化できなかったため、FileMakerでファイルを共有したり、FileMakerをクライアントとして使用することは出来ません。<その前後にやったこと>WindowsXPからWindows7に移行。それにともないFileMakerも再インストール。WindowsXP+FileMakerPro9Advの時は正常に動作していた。2008年9月23日以降にインストールすると、ネットワーク共有ができなくなる」http://filemaker-jp.custhelp.com/app/answers/detail/a_id/9235「ネットワークスタックを初期化することができないため、ファイルを共有したり、クライアントとしてファイルにアクセスすることができないことを意味するエラーが表示される」http://filemaker-jp.custhelp.com/app/answers/detail/a_id/9033/related/1ファイアウォールの設定に間違いがないことが大前提だけど、上記日付以降にインストールをしたなら、これが原因でしょう。単純にPCの日付を2008年9月23日よりも前にして再インストールする。他に同様の環境で動作しているPCが幸いにもあるなら、そのPCから「server.pem」というファイルをコピーしてもらえばOK。8server.pemにある。ちなみに、上記日付以降にインストールした場合のserver.pemのファイルサイズは約3KBだった。正常なファイルサイズは上記リンクによれば5.01KB。いう環境で問題なく動作している。29アーカイブ2020年2月2018年10月2017年12月2017年2月2015年4月2015年3月2015年2月2014年11月2014年7月2014年6月2014年4月2014年2月カテゴリーAmazonMWSセラーセントラルAndroidC#ExcelvbaFileMakerODBCインスタントWEB公開PHPWarningWindowsWordPressスクリプト今日のメモメタ情報ログイン投稿フィードコメントフィードWordPress.org。