プログラミング
タイトルに「比べてみた」と書いてあるけど、ADOでの処理や設定についてがメインだったりするので、結果だけ知りたい場合は、ずっと下の結果へ・・・ 環境 処理の流れ ADO Schema.ini ファイル (テキスト ファイル ドライバー) Schema.ini ファイルとは INI…
Excelでデータを入力していると、1行目にヘッダ行があって、実際のデータは2行目からということはよくあると思います。 VBAで何らかの処理を行っている際に、ヘッダ行を含んだRangeは取得済みだけど、ヘッダ行を除いた部分をRangeとして取得したい場合、今…
難しく書いたけど、要するに ある製品の販売価格が、不定期に変わっていて、その履歴が残っている。 じゃあ、「任意のタイミングでの販売価格はいくらか?」を取得するというもの。元ネタはこちら https://twitter.com/ia02003812/status/112285709966959820…
いつもの如く、怪しげな事(?)をゴニョゴニョとやっていて、 「あれ、さっきより処理速くね?」となったので・・・ 経緯 結果 コード まとめ(のようなもの) 追記 行削除(2019/5/5) 経緯 ワークシートに50万件ほどのデータがあって、そいつにフィルタ…
最初に断っておきますが、この記事は半分ネタです。 あえて、面倒くさいことしてます。 私がやりたかっただけです。基本に則って2進表示を求めたい方は、 ググる WorksheetFunction.Dec2Bin とか、して下さい。但し、10進数の2進数表示した文字列を取得す…
次のコードを実行するとどうなると思いますか? Public Sub foo() Dim i As Long For i = &H7FFFFFFE To &H7FFFFFFF Debug.Print i Next i End Sub もうひとつ Public Sub bar() Dim i As Long i = &H7FFFFFFE Do Debug.Print i i = i + 1 Loop Until i > &H…
VBAのDictionaryのKeyには、数値、文字(数字を含む)、オブジェクト等が使えます。 そんな中で、ちょっと気になったことがあったので、実験してみました。 データ型が異なる同一値の数値を指定してみる 「データ型が異なる別々の値」をKeyとしてDictionary…
Windowsを使っていると、ソケット通信のコーディングでもしない限り、ほとんど意識する事がないであろうビッグエンディアンとリトルエンディアンに関する事です。まず、「エンディアンって何それ美味しいの?」って人は、こちらをどうぞ。 ja.wikipedia.org…
AutoFilterの抽出条件に配列が使用できるとの事で、試してみた際にハマったので・・・こんなデータを用意。 まずは、1件抽出するコード。こんな感じ? Public Sub doAutoFilter() Dim r As Range Set r = ThisWorkbook.Worksheets("Sheet1").Range("A1").Cu…
2022/10/20 追記 この記事のコードを FindFirstFileW を使って Unicode 対応した記事がありますので、そちらも ご覧ください。 z1000s.hatenablog.com ことりちゅんさん(id:Kotori-ChunChun)のところで、FileSystemObjectとDirを使って、ファイルパスの一…
ADOというとデータベースに使うというイメージが強いような感じがしますが、Excelに対しても使えます。Excelのワークブックを指定して、ワークシート名の一覧取得を、ADOの使用有無で行ってみます。 使用環境 Windows 10 Home Excel 2013 CPU:古い(恥ずか…
いろいろな処理をするコードを書いていると、テスト用の文字列データが欲しくなる時があります。 5個とか10個位なら適当にキーボードから入力して作ってもいいのですが、数百とか数万とか、それ以上となるととても手入力では無理なので、どこかから探して…
最近、表題の処理を2件ほど、はてなブログで見かけた。 いずれの処理も、月始めから指定日までループ処理をしていたが、この手の処理は1週間(7日)の周期性があるので、それを利用してループ処理なしで求めてみた。thom.hateblo.jp b004nws862zx.hatenab…
以前の記事でDictionaryのItemに配列を格納して、後から更新しようとして出来なかったが、懲りずに今度はRangeを格納して試してみた。z1000s.hatenablog.com結論から言うと、今回は更新可能でした!!! DictionaryのItemを更新することで、ワークシートの値…
あまり使う事はないような気がするが、複数のセル範囲の集合をひとつのRangeとした時、そのRange内のデータにどうやってアクセスするのか?やってみました。 複数のセル範囲が不連続の場合のアクセス方法を調べることが目的です。Unionで纏める記事はそれな…
もうすぐ3月です。 私のいる会社では、月末近くになると年度末の棚卸しがあります。担当の方がデジカメで写真を撮っては、Excelのワークシートに ちまちまと貼り付けてはサイズと位置を調整して・・・面倒くさそうです。(私はその作業に関しては部外者なの…
どうせなので、多次元配列(3次元だけど)にしてみた。 テスト用データ その1 配列を格納してみる Public Sub Dictionaryに配列を追加() Dim dicValues As Dictionary Dim lValues(1, 1, 1) As Long Dim lKey As Long Dim i As Long Dim j As Long Dim k A…