「row」タグアーカイブ

EXCEL2:XFD (16,384 列)

「ワークシートに1行、列番号を入力する」
このたび、エクセルで一度やってみたかった事をやってみました。夏休みの自由研究みたいな課題ですが、ワークシートの列番号と同じアルファベット英文字を1行で入力する、という事です。Rio 2016オリンピックを早朝TV観戦しながらWinPCエクセルでワークシートを作成して結果、Twitterに投稿しました。

プログラムは使いません。ワークシートの列番号と同じアルファベット英文字を1行で入力するという、誰にでも出来そうな簡単な事なのですが、上手くやらないとメモリ不足等でエクセルが壊れてしまいます。

ワークシートの行列数は、EXCELの仕様で、

EXCELヴァージョン2007以降
1,048,576 行
16,384 列 XFD 列

EXCELヴァージョン2003以前
65,536 行
256 列 (IV 列 アイヴィ列)

行数は行番号と同じですが、列番号はアルファベットで表記されますので、加工する項目名がAB列とかBI列(それ以降も表がある)などPC画面上で表全体を見ることが出来ない非常に横長の表も時にはあったりします。

以前のヴァージョンの頃テクサポの問合せに、エクセルでは横列で365日データを記録できないのでなんとかならないか等々、勤務中のデスクというユーザ様からキテレツな問合せを受けた様な気がしたものでしたが、現ヴァージョンでは、
16,384列 = 256列 × 64
365 / 16384 ≒ 44.888 、列の方向で充分に40年以上分満たせることになります。

EXCEL2007以降の列番号アルファベットは、Aから3桁までになっています。
A- Z 1~26列 (26列)
AA- ZZ  (26×26= 676列)27~702列
AAA- AZZ(26×26= 676列)703~1378列
BAA- BZZ(26×26= 676列)1379~2054列
CAA-

WAA- WZZ(26×26= 676列)15575~16250列
XAA- XFD (134列)    16251~16384列

オートフィルでA,B,C, のアルファベット連続入力機能は既定では無いので、オプションの詳細設定(全般)「ユーザー設定リストの編集」で並べ替え順や連続データ入力設定で使用するA,B,C,リストを追加して作成します。この追加リストは、大文字小文字いずれかしか登録できないようです。リスト追加後は、全角半角どちらでもオートフィルでA,B,C連続入力できるようになります。

行の方向に、A列:1~ 16384を入力、B列: A~ XFDを作成して、行列を入れ替えて貼付けする方法もあるかと思います。PCのマウス操作だとPC画面上から大幅にスクロール、長時間になるので、キーボードショートカットを使う方が効率的です。

列番号の入力が完了すれば、

DOC 列 は 3097
JPN 列 は 7190
POP 列 は 11222
TCP 列 は 13614
RIO 列 は 12417
UFO 列 は 14367
XYZ 列 は ありません。

2016 は BYN 列
2020 は BYR 列
11111 は PKI 列
12345 は RFU 列

列番号を1行目に作成して、セルを1行すべて埋めてしまいます。
同様に、行番号もA列などに1行入力して、A列セルすべてにデータを入力してみます。このような状態のワークシートに、さらに1列(1行)追加、列挿入あるいは行挿入の操作をすることはできません。下記のような日本語でエラーメッセージが出て、EXCELの仕様制限の警告になります。

「データの消失を防ぐため、空白でないセルをワークシートの外に移動することはできません。新しいセルを挿入する別の場所を選択するか、ワークシートの末尾からデータを削除してください。」

ヴァージョン2003以前の65536行ワークシートにデータを読み込んだ時、インポートデータがすべて取込まれていない場合に、このようなエラーメッセージがわりとよく発生していました。65536 行では日本全国の郵便番号データベースも一括で読み込めず、地域別ワークシートを作成していましたが、現在は、12万件以上の全国郵便番号データが1シートでOKです。

EXCEL◇行列を入れ替えて貼付け

「行列を入れ替えて貼付け」
知ってる!
[形式を選択して貼付け]の下の方にチェックボックスがある。やったこと、ある。

でも、どういう時に使うんだろう。
「行列を入れ替えて貼付け」


横長の表を、縦長にすれば、ってときかも。

(ピボットテーブルレポートも、そうかもしれない)
データ図表の縦横は、どっちがいいのか。

実際にEXCELで[行/列の入替え]をやってみる。

縦長横長の表の体裁が目的なら、表の行数と列数が同じテーブルでは、意味ないのかどうか。

表の見出しが、縦に並ぶのと、横に並ぶのと、

表の意味がちがうかもしれない。

データの中身が結局同じならば、縦横どちらでもよいのかも。

また、実際[行/列の入替え]をやってみると、[貼付け]できる時とできない時がある。

警告[コピー領域と貼り付け領域が同じサイズかつ同じ形状でない場合は、それらの領域が重ならないようにしてください。]

コピー元の表の先頭で、表データの[行列を入替え]しようとしていたので、警告が出た。コピーした表と重なる位置で[貼り付け]することができない仕様ということ。

EXCEL◇WEBページをEXCEL表にする

WEBページをEXCELに貼付けしたり、業務システムからデータ表をテキスト(.csv形式)でエクスポートしたけれど白紙の部分、空白行がとても多い。EXCELで一度開いてみると1000行くらいまでの範囲に表1-表10 のようにいくつか表題が気まぐれに書いてあるような資料の場合です。列はほとんど揃っているのですが、セクションごとの表が10行前後間隔で離れていて、表自体もタイトルだけでなく表全体に空き間隔があります。

A列に1列挿入し、1などの値を入力して追加します。オートフィルタが設定できる表の状態にしてみます。次に、オートフィルタで[空白セル]を選択したあとの状態を見ます。空白セルが真っ白でなく、どこかにまだデータがある行が見られるようなら、「空白セル」列に何か入力して「空白セルでないセル」の方にしなければなりません。再度[空白セル]選択するとシート全体が真っ白になり、なにもなければ空白行すべてを行選択して[行の削除]の操作をします。オートフィルタを解除して、全体表が整然と見えてきたらOKです。

列もずれて揃ってない部分があれば、タイトル行とデータを揃える、テーブル表にしなければなりません。

ちなみに「WEBページをEXCELに貼付けする」場合は、Webページ上で [Ctrl+A(すべて選択)]→[ Ctrl+C(コピー)] の操作で、WEBページのコンテンツをコピーしたら、EXCELワークシートに切り替え、A1セルで右クリック、値貼付けしてクリップボードのページ全体からWEBページ上のLogoや広告等のイメージを除いて、テキストデータだけを貼付けします。

EXCEL◇データベース最下行までスクロール

ダウンロードしたデータ表が非常に大きく行数が多くて、マウスでドラッグしたまま最下行まで引張る操作をするとき、あとどのくらい時間がかかるか気掛かりな事があるかもしれません。その場合は右スクロールバーを見ます。スクロールバーが徐々に下方に移動していますので、その位置で操作の経過がだいたい分かると思います。

EXCEL◇データベース操作の準備

Excelデータベース操作の基本はデータ表に空白行がない状態、A列かどこか表の1列が入力済みの一連のデータで埋まっていることです。

それから、データがすべて表示されていること。

共有で、作業中のシートにオートフィルタが設定されているのに気付かない事があります。行番号が青文字になっている場合です。また「非表示」行がある場合も要注意です。

既にシートがレポート表になっていて、表のタイトルが「セル結合」などデザインされていたりして、列選択やフィルタ操作がいったん出来ない様に設定されている時もあります。

データベース操作に書式設定はほとんど必要ありません。元データのシートをコピーしてレポートのデザインイメージをとっておいて、作業するシートの表でタイトルなどの行は削除し1行目からデータ表にします。操作のエラーがあってもなくても、作業シートをコピーしてバックアップとして保存しておくと、作業に集中できると思います。バックアップは、データが消えたり元に戻せなくなったりパソコンに何か問題が起こった時にその前の時点に手順を戻すための一番良い対策です。なにごとも問題無いのがなによりで、取り越し苦労かもしれませんが、事前にシート1回コピーして保存しておく操作は、誰でも簡単に出来ることですから、億劫がらない事が肝心です。

あとは、データの1行目は各列の項目名(フィールド名)があってもなくても構いませんが、データ数をカウントするとき列の名前があればデータ数は行数-1になること等です。