忘れられない激○○料理

エクセルのユーザー設定で150個以上のデータをインポートしたいのですが・・・できません。

A 回答 (5件)

こんにちは。


[Excel の仕様および制限]
http://office.microsoft.com/ja-jp/excel/HP051992 …
ここにも載っていなかったので、実はモノずきにも一度調べてみた事があります^ ^;

以下、私の環境での実験です。参考程度に考えてください。(win2000/xl2000/RAM256MB)

『1つのリストに何文字まで文字入力できるのか?』
漢字1文字×1,000行登録できました。
漢字5文字×332行。
漢字10文字×181行。
漢字20文字×95行。
漢字100文字×19行。

『ユーザー設定リストの最大登録件数は何件か?』
あくまで推測ですが、登録可能数は、『使用可能メモリに依存』するのではないかと思います。
さらに、各リストに登録されているデータ量によって変動すると思います。
各リストの全部が、前述の文字数ぎりぎりまで登録されていたら1,700件程です。

#あくまで私の環境での話です。
    • good
    • 0

#3です。


Sub test01()
With Sheets("sheet3")
TempArray = .Range("H1:H200")

Application.AddCustomList ListArray:=TempArray

End With
End Sub
のコードを作って、H1:H200に
a1からa200間で入れて、実行しました。エラーは起らず、
ツールーオプションーユーザー設定で設定を確認しました。
ただし質問者の場合には、個々のアイテムが文字列の長いものかも知れず、直ちに150以上大丈夫とは言い切れませんが、実験可能なら、シートのセルにアイテムの文字数を移して、実験してみてください。
ーー
この後400行まで増やすと、VBAの実行エラーは起こらないものの、ツールーオプションーユーザー背鄭は2a254しか、出ませんでした。 255行(2^8-1)あたりが制限くさい。
    • good
    • 0

こんにちは。



私なら、このようにします。

例:
 A    B  ......     F      G
対照列  数式列  オーダーリスト インデックス
あ    *数式       い     1
い    *          ろ     2
う     ↓         は     3
え              に     4
お              ほ     5
か              へ     6
き              と     7
く              ち     8
け              り     9
こ              ぬ     10
さ              る     11
し              を     12
す              わ     13
せ              か     14
そ              よ     15
た              た     16
ち              れ     17
つ              そ     18
               つ     19


・対象列は、並べ替えたい列のことです。

・数式列には、以下のような数式を入れてあげます。

  *数式

=IF(ISERROR(VLOOKUP(A2,$F$2:$G$50,2,0)),999,VLOOKUP(A2,$F$2:$G$50,2,0))

 [数式の中の 999 というのは、該当しないものを、オーダーリストの中に入れないようにするためです。数式を下にドラッグコピーします。]

・オーダーリストは、自分の並べ替えたい順序のことです。
・インデックスは、その順序です。


数式を入れて順序が出てきましたら、後は、「数式列」を対象にして、

メニューのデータ-並べ替え

で並べ替えをします。

もちろん、数式は、上記だけではなく、

=IF(COUNTIF($F$2:$F$50,A2),MATCH(A2,$F$2:$F$50,0),999)
このような数式なら、オーダーリストだけで順序は出せます。

なお、マクロで作ると、こういう作業は必要がなくなります。
    • good
    • 0

ユーザー設定リストの許容最大登録数は、私には判らない。


しかし
別にVLOOKUP関数FALSE型で修正ソートキーを振れば、解決すると思う。
並べたいデータのシートとは、別シートに
並べたい順に1列にデータを入れる。
上から連番(数字)を入れる。
B列に
=VLOOKUP(A1,Sheet2!$A$1:$B$1000,2,FALSE)のように。
そしてB列をキーにして並べる。
ーーー
数制限は65536行。
ーー
毎回この順序を再々使うなら
Sheet2の使わないセルに
式 '=VLOOKUP(A1,Sheet2!$A$1:$B$1000,2,FALSE)
を貼り付けておいて、それを複写して使えばよい。
    • good
    • 2

こんばんは。



>ユーザー設定で150個以上

こういっても始まらないような気がしますが、ユーザー設定リストは、いわゆる「オーダーリスト」ですが、そこに入れたところで、それほど、役に立つようには思えません。ドラッグコピーか、並べ替えだけだと思います。それに対しては、VLOOKUP などを使って、序数をつけるなりすればよいと思います。もしくは、マクロで行うか、どちらかです。

Excelは標準的な使い方をする限り、その上限に制限されることは、めったにありません。多くは間違った使用法です。

結局、その機能の仕様そのものよりも、何を目的とするか、だと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます!!
Wendy02さんのおっしゃる通り、並べ替えの指定順序に使用しようと思っていました。
指定順序が多い場合に、データーベースを並べ替える方法を詳しく教えていただけないでしょうか?
エクセル初心者なので、できればよろしくお願いします。

お礼日時:2007/07/11 01:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報