スポンサーリンク

サンプルコード

Excel関数で,VBAマクロを使わずに,重複行レコードを検出して削除する方法。サンプルシートつき

Excel/Wordオフィス製品のTipsまとめへ Excel関数で,シート上の行データの重複を検出し,削除したい。ここで,重複しているかどうかの判定は,複数の列データを参照したい。 このような「重複検出」の処理を,VBAマクロを使わずにシート関数だけで実現する…

WSHのCreateObject関数の引数のCOM識別子「ProgID」「CLSID」(GUID)とは何なのか解説。Windows内のActiveXオブジェクトを一覧表示して確認するコマンド

WSHなどのWindowsプログラミングでよく使う「CLSID」「ProgID」について解説。 WSHで,CreateObject() の引数を不思議に思ったことはあるだろうか?"InternetExplorer.Application" とか "Excel.Application" など,別のアプリ(自動操作したいCOMオブジェク…

UWSCで「F12 IE開発者ツール」を自動操作し,ブラウザに任意のユーザエージェント文字列を設定するサンプルコード

UWSCマクロでIEを自動操作する際に,「開発者ツール」を自動操作し,自由にユーザエージェント文字列を設定してみよう。 UWSCサンプルコード // // UWSCマクロでIEを自動操作するサンプルコード // // ----- 設定項目 ----- // アクセス先のURL target_url =…

UWSCでIEを自動操作する際に,sckey()で複数のキーを同時入力するサンプルコード

UWSCを使うと,WindowsのGUIプログラムやブラウザなどを自動操作できる。その際に,GUIのウィンドウ上で「複数のキーを同時に押す」という処理のサンプルコード。 ショートカットキーを押すには,複数のキーを同時押しする必要がある UWSCでは,KBD()という…

WSHやUWSCのバッチでIEを自動操作する時,ユーザーエージェント改変でiPhoneからのアクセスに偽装するサンプルコード (UA設定で,スマホ向けのWebページをブラウザ上に表示)

バッチで,ブラウザのUAを改変し,別のブラウザ向けのページを表示させるサンプル。 たとえばIE上で,iPhone向けのWebページを表示させたい。自作プログラムからブラウザを自動操作する際に,スマホ用のページを表示させたいのだ。 バッチで,COM経由でIEを…

OOo Calc Basicマクロで配列を初期化し,動的に要素数を増やし,引数に渡すサンプルコード。実用的な配列プログラミングをマスター

Excel/Wordオフィス製品のTipsまとめへ OpenOffice.org Calc の Basic マクロで,配列の実用的な操作方法をサンプルコード付きで解説する。Excel VBAと同じように,配列を自由自在に使いこなせるようになろう。 (1)配列の宣言と初期化・生成のサンプル (…

OOo Calc Basicマクロで,シート上の「セル値が変更」されたタイミングでイベントを実行する簡単な方法

Excel/Wordオフィス製品のTipsまとめへ OpenOffice.org CalcのBasicマクロで,セル内容が変更(値が書き換え)されたタイミングでマクロを実行するサンプルコード。セル内容の変更イベントをキャッチする簡単な方法がある。 イベントの内容をコーディングす…

Ooo Calc Basicマクロで,ファイルパスをフォルダパスに変換する関数のサンプルコード。Windows用のフルパス文字列から親ディレクトリのパスを抽出するOpenOffice.org用コード

Excel/Wordオフィス製品のTipsまとめへ OpenOffice.org Calcのマクロで,ファイルパスをディレクトリパスに変換するコード。文字列処理によりファイルパスを加工し, ファイルが存在するフォルダのフルパスを取得できる。 Sub test1 ' ファイルのフルパスを…

Ooo CalcのBasicマクロで,ブックの存在するフォルダのフルパスを取得する関数のサンプルコード。Excel VBAのThisWorkbook.Pathのように親ディレクトリを返す

Excel/Wordオフィス製品のTipsまとめへ OpenOffice.org のCalcで,ブックの保存されているフォルダのフルパスを一発で取得する関数のサンプルコード。Excel VBAでの ThisWorkbook.Pathに相当する。 Sub test ' このブックの存在するフォルダのパス Msgbox ge…

Ooo Calc Basicマクロで,ブックと同じフォルダ上でテキストファイルに書き込みするサンプルコード。シート上の情報をテキスト出力する最も簡単な方法

Excel/Wordオフィス製品のTipsまとめへ OpenOffice.org CalcのBasicマクロで,テキストファイルに書き込みする一番簡単なサンプルコード。テキストファイルは,ブックと同じフォルダ上に,自動的に新規作成される。同名のファイルが既に存在する場合は,上書…

Ooo Calc Basicマクロで,シート内の特定セル領域をCSV出力するサンプルコード。ブックと同じフォルダ上にタブ区切りで複数データを書き出し

Excel/Wordオフィス製品のTipsまとめへ OpenOffice.org CalcのBasicマクロで,シート内容をCSV出力するサンプルコード。特定のシートの行・列領域を指定し, ブックと同じフォルダ上にTSV(タブ区切りCSV)形式で保存する。シート全体をCSV変換するのではな…

Windows上のコマンドライン・バッチで,WAVファイルの再生速度や音程を編集操作。2つのモノラルWAVを合成し左右ステレオ出力で保存する「SOX」のサンプルコード

SOXは,wavファイルを編集操作するコマンドラインツール。フリーソフトで,簡単に使える。WAVの再生速度や音程を一発で変更できる。 SOXはLinuxの世界では有名だが,Windows上でもCUIで利用できる。CUIなので,コマンドプロンプトから実行するだけでなく,バ…

HTML・CSS3・JSを使い,Webサイトを「コピペ禁止」にする方法のまとめ。右クリックや文字列選択・内容の複製をできなくする無効化テクニック集

Webページを「コピペ不可能」にするためのテクニックまとめ。マウスで右クリックしてコピー,Ctrl + C で無断転載,などの行為を禁止できる。CSSやJavaScriptでの手法を網羅した。 (1) 右クリックの禁止方法 (2) コピーイベントを禁止する。Ctrl + C …

JavaScript/HTML5で,SJISの日本語CSVファイルをWebページ上で動的に生成してダウンロードするサンプルコードと解説 (動作デモ付き。Excelで開いても文字化けしない)

HTML5のJavaScriptで,Webページ内でCSVファイルを動的に生成してダウンロードする。CSVファイルの中身は日本語で,文字コードはSJIS(Shift-JIS)とする。サーバ側の処理は一切不要で,JavaScriptだけで実装する。 下記URLに,実際に動く動作デモがあります…

OOo CalcのBasicマクロで,セルの行・列番号を変換して,"A1"等のセル番地・アドレス表現文字列を取得する方法

Excel/Wordオフィス製品のTipsまとめへ OpenOffice Basicマクロで, Calcのセルの座標を,「A1」などのアドレス表現(セル番地)に変換するサンプルコード。つまり列番号をアルファベットにするということ。 Excel VBAだと セル.Address というメソッドだけ…

OOo CalcのBasicマクロで,「値のある最後の行や列」を取得する方法。Excel VBAのEnd(xlDown), End(xlToRight)と同じ目的のサンプルコード

Excel/Wordオフィス製品のTipsまとめへ Excel VBAでいう End(xlDown) ・ End(xlToRight) を, OpenOffice.org CalcのBasicマクロで実現した。再利用可能なコードを下記に示す。 ' シート上の「データが存在する一番下」や「一番右」を ' 取得するサンプル Su…

OpenOffice calcのBasicマクロで,簡単に列をソートするサンプルコード

Excel/Wordオフィス製品のTipsまとめへOOo Calcで,シート内の任意の列をソートするマクロのサンプルコード。 ' 列をASCでソート Sub MySortAsc ' ソートを実行するシート番号と列番号 sheet_index = 0 column_index = 0 ' ソート範囲 sort_range = "B7:X561…

OpenOffice.org Calcのセル内で,HYPERLINK関数だけでマクロを実行する方法 (表計算シート上にボタン塔を設置せずに,OpenOffice Basicを簡単に実行する)

Excel/Wordオフィス製品のTipsまとめへ OOo Calcで,セル内のHYPERLINK関数だけでマクロを実行できる。下記のように記述すればよい。 =HYPERLINK("vnd.sun.star.script:Standard.Module1.Main?language=Basic&location=document";"クリックしてね") これだけ…

Excel・Calcで頻出の関数の使い方パターン「1セルずつずれながら順番に参照」。INDIRECT(ADDRESS(ROW))

Excel/Wordオフィス製品のTipsまとめへ ExcelやCalcなどの表計算ソフトで,「大量のセル参照」をいちいち書くのが面倒な場合がある。INDIRECT,ADDRESS,ROW の3つの関数を組み合わせて,簡単にセル参照できる。この組み合わせは,よく使うので暗記しておこ…

WSHで,Sendkeysメソッドで日本語を文字化けせず自動入力する方法 (VBScript+JScriptの両方で可能。clipコマンドを使用)

WSHのSendkeysメソッドで,日本語の文字列を, 文字化けせずに正確に自動入力する方法。 まず,Windows Vista以降であれば,コマンドプロンプトでclipコマンドを使える。 echo ほげ| clip ↑これで,クリップボードに日本語のテキストが格納される。あとは,CT…

BATで,実行結果の出力ログの保存先を,現在日時つきファイルにリダイレクトするサンプルコード

BATで,コマンドの実行結果をログに保存する時に, ログのファイル名に現在日時を含める。 @echo off SET hour_with_space=%time:~0,2% SET timestamp=%date:~0,4%_%date:~5,2%%date:~8,2%_%hour_with_space: =0%%time:~3,2% 記録したいコマンド > log\out_%…

「カレントフォルダのバックアップを取得・保存するバッチ」のソースコード。たった数行のBATで強力なバックアップが可能

「このバッチが置いてあるフォルダを,まるごとバックアップ」というバッチ。 rem カレントフォルダをバックアップする rem バックアップ先フォルダ名 SET DIR_TO_ROOT=D:\tmp\work rem 日時情報の入ったフォルダを作成 SET DIR_TO=%DIR_TO_ROOT%\bu_%date:~…

JavaScriptの配列便利メソッドArray#reduceを,WSH/JScriptで使えるようにする方法 (flattenメソッドつき)

いまやIEやFirefoxで標準的に利用可能な,配列の便利メソッドであるArray.prototype.reduceだが,これをWSHでも使えるようにしたい。 firefoxのJavaScriptの便利関数,reduceの使い方とサンプルコード。配列の全要素を順番に使い,一つの値を生成。Rubyのinj…

firefoxのJavaScriptの便利関数,reduceの使い方とサンプルコード。配列の全要素を順番に使い,一つの値を生成。Rubyのinjectに相当

JavaScriptの配列関数は,どんどん便利なメソッドが増えている。その中に,「配列の全要素を順番に使い,1つの値を生み出す」というメソッドがある。 それが Array.prototype.reduceだ。Rubyでいうとinjectメソッドにあたる便利関数。 サンプルコードを見て…

自動的にWiFiに再接続するバッチ。ネットワークを無効化後,無線LANを有効化するコマンド

「モバイルルータとWifiを使いこなす」まとめTOPへ 無線LANをいったん無効化(切断)して,再度つなぎなおす。この操作を自動化する。 バッチのコード 下記のバッチファイルを,右クリックして「管理者権限で実行」すればよい。無限ループになっており,18…

素数判定の処理を,再帰アルゴリズムで1文で書いたJavaScriptプログラムは

こうなる: <body> <script> // 1から100までの素数を表示するプログラム // 全体を一つの文として宣言 var // 再帰ロジックによる // 素数判定関数 isPrime = function( n ){ return makeDivRecursive( n, Math.floor( Math.sqrt( n ) ) ); } , // ある数が割り切れるかど</body>…

Excel VBAで,2つの日付を比較し,差分を計算する関数

Excel/Wordオフィス製品のTipsまとめへ 日付の間隔を求めるVBAサンプルコード。けっこう簡単に,日数を計算できる。 Sub main() ' 2つの日付を比較 d1 = CDate("2001/01/01") d2 = CDate("2015/12/31") MsgBox DateDiff("d", d1, d2) ' d2 - d1 MsgBox Date…

Excel関数で,空白セルを無視した「連番」を自動的に入力する方法 (シートの画面キャプチャ付き)

Excel/Wordオフィス製品のTipsまとめへ Excelの関数で,条件を満たすセルだけに番号をふる方法。(=ナンバリング)条件を満たさない場合や空白セルの場合は,番号を付けないでスキップする。 こういう連番を振りたい場合,VBAマクロを使わないで,関数だけ…

Excelで,「今月」を表示する関数

Excel/Wordオフィス製品のTipsまとめへ MONTH(TODAY()) でOK。 TODAY() という関数で,現在の日時を表すシリアル値が返る。 取得されたシリアル値を MONTH() 関数の引数に渡せば,日付情報の中から月の値だけを取り出して,1から12までの間の値で表示して…

JavaScriptのclassName属性は,要素の複数のクラス名をスペース区切りで取得する

HTML上で,あるDOM要素が複数のクラス名を持っている場合,classNameプロパティの呼び出しは,複数のクラス名を文字列として取得する。 HTML上のclass文字列がそのまま文字列として返る 文字列の様子は,htmlに書かれているまま。複数のクラス名の間に半角ス…