ぽけっち

プログラマーしながら猫の人形を作成してます 我が家のお笑い猫 まーちっこをメインに作成…

ぽけっち

プログラマーしながら猫の人形を作成してます 我が家のお笑い猫 まーちっこをメインに作成することが多いです サーニット粘土とグラスアイを使用してます 本業のプログラムについての備忘録を書いてます

最近の記事

これからなにしようかな って考えてる まーちっこ 私も同意してるのよね

    • 複数ある項目Keyにするとき

      改修中のソースの中で出会う複数項目の連結 Keyで重複を作成することはバグ発生の原因になります Excelで複数の項目をKeyにするとき、項目を連結してKeyを作成します 気をつけたいのは文字の長さ 文字の長さがすべて固定の時はそのまま、連結しても問題ないでしょう 可変のときは数値の項目を2度連結すると 極端の例ですが 111 1&11 11&1 というKeyができる可能性が出てきます この時に気づけば連結するときに間に入れる文字を決めてあげましょう

      • データ件数が多いときの重複データの調べ方

        重複データの確認をするとき、関数のCOUNTIF、COUNTIFSを使用することが多いと思います 関数を使用した後にAutofilterして重複分のみ表示する 件数が多くなると処理時間がかかります そこでピボットテーブルを使うという方法もあります Excelのシートに追加できる件数は100万件ちょっと それ以上のデータを処理したいときはAccessにデータを格納して Group by とCountを使用することです

        • VBAのConstで列名を定義するのはありか、なしか

          はい、今回もExcelで発生した列名定義について 最初の列の位置とかを指定するぐらいだったら問題ないと思うのですが 全部の列をConstで定義しているVBAを見ると改修に頭を抱えることが多いのです この作り方をする人は 横にいろんなファイルの列がずらりと並び 1つでも項目がかけたり、増えたりするとすべて定義しなおしが出て 確認するだけでも時間がとられてしまいます とっても面倒なんです 私は面倒なことはプログラムに任せて楽したい派なのです 他に項目一覧のシートを作成して

        これからなにしようかな って考えてる まーちっこ 私も同意してるのよね

          Excelの数式を値に変える

          Excelに数式をたくさん入れて作業している人いませんか 場合によっては数式を入れてAutofilterを使うと使用中に数式の計算が自動で行われます その時は手動計算にしておいてもよいと思います その時には数式を値に変更してAutofilterするのも手段として考えてみましょう Countifの数式の時は他にも方法がありますのでまた、今度

          Excelの数式を値に変える

          休憩タイム1

          たまには仕事の備忘録じゃなくてもいいのかな? ネットでの買いたいものを検索するときに 皆さん、どんな単語を羅列するのかしら 単語の羅列じゃない人もいるのかな? 検索キーワード 猫 パウチ 猫 ペットシート 探してしまうのですよね、我が家の猫様 商品を

          休憩タイム1

          workbookを変数に格納しないのはありか、なしか

          最近、目にしたVBAのworkbookの書き方です workbooks(xx).worksheets(x).range(1,"A").select 同一のBookを使用するときには同じ名前がずーっと続くのです そしてbookを閉じる時にはbookの一覧を取得してあれば閉じる って 途中でbookの名前を変更したものだったら閉じれなくてメモリを食い潰す という斬新な書き方にプチ脳内パニックになりました もちろん、作業者から苦情が来ていたので 彼が書いた   一部のbo

          workbookを変数に格納しないのはありか、なしか

          0落ち(CSVファイル)

          なんとか、3日坊主を越えました どのくらい続くか、ネタがあるのか ExcelでCSVファイルをOpenして閉じると 0から始まる数値、郵便番号、電話番号など 例えば、北海道の郵便番号は0から始まります 7桁が5桁、6桁とExcelが自動変換してくれちゃうので困ります 毎回、Officeが余計なことをしないでほしいと思います なので左詰めで0を足す余計な作業が増えるのです

          0落ち(CSVファイル)

          Key項目の重複チェック

          Keyになる項目の重複チェックを行う時は ExcelだとCountifで件数を取得して重複件数を取得することが多いです そのあとにAutofilterで重複したKeyのみ表示 上記は生データを加工できないときの方法です 生データを加工できるときは重複削除を行います AccessだとGroup By とCountや、Distinctを使っています

          Key項目の重複チェック

          100万×100万の高速化

          100万×100万=一兆 実務でたまに見かける前任者たちの処理方法です 一つずつCellを2重以上のLoopを行う処理を見かけます Excelの行数の最大値は1,048,576 通常業務ではぎりぎりまでデータを使うことはほとんどないと思います A列のデータ 100万行 C列のデータ 100万行 すべてfor nextでif文で一致するデータを格納するという処理を行うと 100万行あるデータをif文で一致するかを繰り返す処理を100万回行うことになります 二重Loopに

          100万×100万の高速化

          プログラミングにコメントは必要なのか

          プログラムソースにコメントがあったほうが親切です コメントの記載をしたくないときはシートに概要の記載をお願いしたいですね 最近、会社をやめた方のExcelのソースの修正や高速化を求められることが多いです プログラムにコメントは必要ないから中を見ればわかるでしょというスタンスの方を見かけます 作業しながらプログラムする方の多くは 繰り返し処理の中でif文で一致したらまた繰り返し処理と多重ループで作成する方が多いです 作業の内容を把握していれば理解もできますが、作業の内容

          プログラミングにコメントは必要なのか