PC、Net などに関する防備録


指数表現

Webサイト内で指数表現をしたい場合が有る。その方法
例えば、世界で一番有名な、アインシュタインの次の方程式――

E=mc2

この場合次のようにタグを付ける。
E=mc<sup>2</sup>

テーブル枠線を、1ピクセルに設定(影を排除)

XHTMLとスタイルシートを使うようになって、テーブルレイアウトは使わなくなったが、テーブルは時として使う。
ボーダーを1ピクセルに設定しても、そのままではどうしても線にシャドウが付き、実質2ピクセルになってしまう。

これをスッキリ1ピクセルにするスタイルシート
(.tablestyle は任意のスタイルシート名。#2F4F4F は任意のカラー名)

.tablestyle {
    border-collapse: collapse;
    border: 1px #2F4F4F solid;
}

 

Movable Type タグクラウド不備の顛末

タグクラウドの不備(同じタグが統合されず、一つ一つ個別に出る)の解決で、アレコレ試行錯誤。
基本的にはMovable Type とサーバーのデータベースで、異なる文字コードが使われていることが原因らしい。
ただ新規設定ならいざ知らず、既に相当構築が進んでいるサイト・ブログの設定変更は、どうも色々厄介でも有るらしい。

.........で、

タグクラウド-ウィジットのコードを、バージョン5デフォルトから「Movable Type公式ブログ」のものに入れ替えて見た。
こちらのサイトを参照。

  • 結果
    文字コードの変更なしに、タグの統合は出来た。
    取りあえず半分以上は達成。
  • 残った課題
    タグの出現比率に応じた表示の大きさが変わらない。これはCSSの問題か?
    htmlコードに対応したcssなら何とか分かるのだが、MTタグは今のところ「何が何やら」状態。
    引き続き探索の要有り。

テンプレート控え

バージョン5

<mt:Tags top="20">
<mt:If name="__first__">
<div class="widget-tag-cloud widget">
    <h3 class="widget-header">タグクラウド</h3>
    <div class="widget-content">
        <ul>
</mt:If>
            <li class="rank-<$mt:TagRank max="10"$>"><a href="javascript:void(0)" onclick="location.href='<$mt:TagSearchLink encode_js="1"$>';return false;" rel="tag"><$mt:TagName$></a></li>
<mt:If name="__last__">
        </ul>
    </div>
</div>
</mt:If>
</mt:Tags>

 

Movable Type公式ブログ

<div class="widget-tag-cloud widget">
    <h3 class="widget-header">タグクラウド</h3>
    <div class="widget-content">
<MTSetVar name="i" value="5">
<MTEntries lastn="10">
<MTEntryTags>
    <$MTTagName setvar="tagname"$>
        <MTUnless name="seen{$tagname}">
        <MTIf name="i" gt="0">
            <MTSetVar name="i" op="--">
            <MTSetVar name="seen" key="$tagname" value="1">
            <MTSetVarBlock name="push(tag_htmls)">
                <li class="rank-<$mt:TagRank max="10"$> widget-list-item"><a href="<$mt:TagSearchLink$>"><$mt:TagName$></a></li>
            </MTSetVarBlock>
        </MTIf>
        </MTUnless>
    </MTEntryTags>
    </MTEntries>
       <ul class="widget-list">
        <MTLoop name="tag_htmls">
            <MTVar name="__value__">
        </MTLoop>
       </ul>
   </div>
</div>


</div>

MTのコメント用ブロックタグ

<!--.........-->の代わりに以下のタグで囲む

<MTignore>.........</MTignore>

EXCELで、検索条件が2つ、或いはそれ以上の場合の関数処理

検索条件が2つ、或いはそれ以上に有る場合に、その条件ごとの件数だとか金額の合計を求めたい、と言うことが、長年分からずに来た。
多分皆さん、とっくに御承知のことで「何を今さら」的問題だと思うけど。

検索条件が1つの場合、例えば「1日付」の伝票の枚数や金額の合計、或いは「A商店」の伝票の枚数や金額の合計は、COUNTIF関数やSUMIF関数で簡単に求められる。
ところが、「1日付のA商店」の伝票や、「1日付のB商店」「2日付のA商店」等と、検索条件が2つになると、途端にその区別が分からなくなる。
AND関数やOR関数を使って、色々やってみるのだが、どうしてもうまく行かない。

「こんな単純なこと、分からないのは俺だけで、多分簡単な解決方法が有る筈なんだろうな」と思いながら、手がかりもなく特にネットで調べることもしないで、長年不細工な回避処理で凌いで来た。
今回少し本腰を入れて、この長年の宿敵退治をするべくネットで調べてみたら………、アッサリ解決してしまった。

要するに、2つ、或いはそれ以上の条件が有る場合、それを全部、文字列として繋いでしまえば、一つの固有の条件として検索対象になるって訳だ。
例えば、「1日付」の「A商店」の伝票だったら、それを、演算子「&」か、関数「CONCATENATE」なんかで連結して「1A商店」にしてしまえば、「1B商店」「2A商店」等と区別できて、固有の検索条件にすることができる。

http://y-ok.com/blog/2009/08/excel.html


DreamWeaverへの、Movable Type-CSS連結

画像をクリック-拡大表示

名称未設定-3.png




Excel-VBAでの、コンボボックスとVLOOKUP関数との悩ましい関係

EXCELでのVBAで、コンボボックスによって、例えば名簿のマスターテーブル左端列の通し番号をシートのセルに表示させたとする。

その番号を「検索値」として、VLOOKUP関数を使った場合、どうしてもエラーが出てしまう。

  1. 同じ番号を直接キーボードから入力した場合は、VLOOKUP関数が正常に機能する。
  2. その後で同じ番号をコンボボックスで表示させた場合は、同じく正常に機能する。
  3. しかしその後、別の番号をコンボボックスから表示させ(この場合当然エラー)、その後最初の番号を表示させても、やはりエラーになる。

原因がさっぱり分からない。

分からないながらも兎も角対処法。

  1. マスターテーブル左端列のもう一つ左列を含めて、コンボボックスプロパティの「ListFillRange」範囲に設定(その範囲にセル範囲の名前を設定すればいい)。
  2. 「BoundColumn」や「ColumnCount」もそれに合わせる。

Movable TypeへのGoogle Map 設定手順の覚え

設置の実際

必ずしも簡単とは言えなかったGoogle API を利用してのMapの設定が、非常に簡単に、しかも設定項目も弾力的に変更出来る形で出来るようになった。

http://www.geekpage.jp/web/google-maps-api/helloworld.php
こちら参照。
ここに解説されているscript を、簡単な順に適用させ、必要な機能分だけ順次追加してゆけば良い。
感謝感激雨あられ。

下の設置例は、Mapに「地図/衛星写真切り替えボタン」と、「拡大/縮小表示コントロールボタン」を付けたもの。
なお、初期化位置として「皇居」を指定し、その位置に「吹き出し」を表示させた。

初期化位置の取得も、上記サイト内のサンプルを使わせて貰った(下で解説)。

緯度・経度の検出ページはこちら

地図を拡大表示し、検出したいヶ所をクリックすると緯度・経度が表示される。

 


 

設置の手順   

上記Map表示のスクリプト

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Google Maps JavaScript API Example - simple</title>

    <script src="http://maps.google.com/maps?file=api&v=2&key=aaaaaaa"
/* 上記文字列 aaaaaaa の部分に、Google Maps API キーを入力-------- */


        type="text/javascript" charset="utf-8"></script>
  </head>
  <body>
    <div id="map" style="width:600px; height:400px"></div>
    <script type="text/javascript">
    //<![CDATA[

    if (GBrowserIsCompatible()) {
      var map = new GMap2(document.getElementById("map"));


/* 「拡大・縮小」「地図・写真切り替え」コントロール-------- */    
    map.addControl(new GMapTypeControl());
    map.addControl(new GLargeMapControl());

/* 下記GLatLngの、最初の引数は、経度・緯度。2番目の引数は、デフォルトでの拡大率。緯度・経度の取得は、下で説明-------- */    
      map.setCenter(new GLatLng(35.68518697509635, 139.75296020507812), 16);

/* 吹き出し設定-------- */
    map.openInfoWindowHtml(map.getCenter(),
             "皇居<br> 東京都千代田区千代田1丁目");

    }

    //]]>
    </script>
  </body>

</html>

 

上記スクリプトを、そのままブラウザで表示させればMapが表示される。
Movable Typeで表示させるには、<script>―<script>を記載する。




ブログ

折々の写真
林檎倶楽部 Blog

最近のブログ記事

駒場野公園
折々の写真ブログ上
代々木の森(代々木公園・明治神宮)
折々の写真ブログ上
地球上の真核生物、870万種
林檎倶楽部 Blogブログ上