【React】ReactのJSXで数値の「0」が表示される理由

React(JSX)において、論理積演算子「&&」を用いた条件付きレンダリングを行う際、意図しない「0」が出力されてしまう事象が発生しました。 この記事では、その実際のコードと問題点・解決策をまとめています。 ...

【MySQL】SSH経由でのCSV出力とローカルへのファイル転送方法

リモートサーバー上のMySQLからデータを抽出し、ローカル環境へ安全に転送する手順の備忘録です。 INTO OUTFILE命令による権限エラーを回避し、データ内の改行を保持したまま出力する方法を紹介します。 ...

【VBA】VBAでテーブル操作を高速化する | 180秒から1秒未満への改善

Excel VBAでテーブル(ListObject)を扱う際、書き込み処理が遅いと感じる原因の多くは、セルへのアクセス方法とExcelの環境設定にあります。実際に800行のデータ処理で180秒かかっていた処理を、1秒未満まで短縮する手法を解説します。 ...

1月 6, 2026

【VBA】テーブル(ListObject)をループ処理する方法|並び替えからデータ抽出まで

Excelのテーブル機能(ListObject)をVBAで操作すると、データの増減に柔軟に対応できる保守性の高いプログラムが構築できます。 本記事では、テーブル内のデータを特定の列で並び替えた後、1行ずつループ処理してデータを取り出す基本パターンを解説します。 ...

1月 6, 2026

ファイルサイズの「重い」基準値:画像・動画・Excelの許容限界

ファイルサイズが一定の基準を超えると、通信の遅延やメールの受信エラー、さらにはデバイスの動作不良を引き起こす原因となります。本記事では、用途ごとに「重い」と定義される具体的な数値について解説します。 ...

Alpine.jsで作るタグ入力(Tag Input)UIの実装

入力後キーワードをタグ化するUIを、Alpine.jsを使用してEnterやSpaceキーで動的にタグを生成する実装方法を解説します。 実装コード html <script src="https://unpkg.com/alpinejs@3.x.x/dist/cdn.min.js" defer></script> <div x-data="tagComponent()" class="container"> <div class="tag-input-wrapper"> <template x-for="(tag, index) in tags" :key="index"> <span class="chip"> <span x-text="tag"></span> <button type="button" @click="removeTag(index)">&times;</button> </span> </template> <input type="text" x-model="newTag" @keydown.enter.prevent="addTag" @keydown.space.prevent="addTag" @keydown.backspace="handleBackspace" placeholder="タグを入力..." > </div> </div> css .container { padding: 20px; max-width: 400px; margin: 0 auto; } .tag-input-wrapper { display: flex; flex-wrap: wrap; gap: 8px; padding: 8px; border: 1px solid #ccc; border-radius: 6px; background: #fff; } .tag-input-wrapper:focus-within { border-color: #007bff; box-shadow: 0 0 0 2px rgba(0,123,255,0.25); } .chip { display: flex; align-items: center; background: #e1ecf4; color: #39739d; padding: 4px 8px; border-radius: 4px; font-size: 14px; } .chip button { background: none; border: none; margin-left: 6px; cursor: pointer; font-weight: bold; } input { border: none; outline: none; flex: 1; min-width: 100px; } JavaScript function tagComponent() { return { tags: ['Alpine.js', 'UI'], newTag: '', addTag() { const val = this.newTag.trim(); if (val && !this.tags.includes(val)) { this.tags.push(val); } this.newTag = ''; }, removeTag(index) { this.tags.splice(index, 1); }, handleBackspace() { if (this.newTag === '' && this.tags.length > 0) { this.tags.pop(); } } } } 仕様のポイント 入力トリガー EnterおよびSpace キーでタグを確定させます。.preventにより、入力欄への不要な空白挿入を防いでいます。 ...

【PHP】ノンフレームワークでセキュアなコードを書く

PHPでフレームワークを使わずにWebアプリケーションを構築する場合、セキュリティ対策をすべて開発者自身が制御する必要があります。 本記事では、以下6つの対策について解説します。 ...

1月 3, 2026

【Python】弥生会計のインポートクラスの応用|本体行と消費税行を合算

Pythonで弥生会計のインポートファイルを作成する記事の続編です。 会計ソフトや販売管理システムから出力したデータでは、本体価格と消費税が別々の行に分かれていることが多々あります。 これらを弥生会計にインポートする際、1行の「税込仕訳(内税形式)」にまとめたい場合があります。 ...

【Python】弥生会計のインポートクラスの作成と使用例

はじめに 手入力での会計処理はミスが起きやすく、件数が多いと膨大な時間がかかります。 Pythonを活用して、Excelの取引データから弥生会計のインポート用CSVを自動生成する仕組みを構築しました。 特に設定が煩雑な識別フラグの自動計算や、弥生会計特有の文字コード制約に対応した汎用的なインポートクラスの実装例を紹介します。 ...

TailwindとJavaScriptで作るアニメーション付きモーダル

Webサイト制作においてモーダルは必須パーツですが、ライブラリを導入するとプロジェクトが重くなったり、カスタマイズが制限されたりすることがあります。 今回は、Tailwind CSSのユーティリティクラスと最小限のJavaScript(バニラJS)のみで、複数設置にも対応した軽量なアニメーション付きモーダルの実装方法を紹介します。 ...