実行時エラー '1004' RangeクラスのSortメソッドが失敗しました。 と出ます。
With Worksheets("データ")
.Range("A2:N" & .Cells(.Rows.Count, 1).End(xlUp).Row).sort _
Key1:=Range("E3"), Order1:=xlAscending, Key2:=Range("C3"), _
Order2:=xlAscending, Key3:=Range("A3"), Order3:=xlAscending
End With
E列、C列、A列で昇順で並び替えしようと思っております。
前まで使えていたのですが、ソートできなくなり、何が原因かわからないため、質問しました。
また、もう一つエラーがあります。
実行時エラー'-2147417848(80010108)'
オートメーションエラーです。
起動されたオブジェクトはクライアントから切断されました。
と表示されます。
http://okwave.jp/qa/q8452163.html
range("A1").resize(ubound(a),1) = application.transpose(a)
上記部分でエラーがでます。
上記内容で、どういった原因が考えられますか?
どちらか片方でも分かる方いらっしゃいましたら、回答よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
こんにちは。
>セルに書き込んで、結果を読み込むようにすれば上手くいきますか?
10+32,767(字) * 2(byte) / 1,024 だから、約64kb 文字列はすべて2バイト扱いされます。
それに反して、String型の変数は、2Gまでです。
もちろん、Variant型でも、量的には減りますが、それでも、扱うことができると思います。
ところで、TextBoxの容量はいくつだったか、調べてみると、以下のような話が見つかりました。
まず、間違いないと思います。
---
http://www5b.biglobe.ne.jp/~yone-ken/VB/TextBox. …
TextBoxにまつわるFAQ
[テキストボックスって容量の制限はあるんですか? ]
[64Kbyteです。それ以上のテキストを扱う場合はRichTextBoxを使います。ちなみに、文字列変数は固定長でも可変長でも最大約2Gbyteまでです。]
-----
私は、RichTextBox という手があることをすっかり忘れていました。
もちろん、Excel2003では、フルインストールしていれば、VB6Runtimeに入っているはずです。
なければ、MSからダウンロードすればよいです。試してみる価値は十分にあると思います。
No.4
- 回答日時:
ところで、SPLITに関しての質問というのは、何だったのでしょうか?
削除されてしまっていたのですが、これとは関係あるのでしょうか?
もし、うまく行かないというなら、なかなか厄介な問題があるような気がします。
なぜなら、SPLITで分けられる配列は、おそらく、Variant で受けなくてはならないからです。
もし、明示的なデータ型なら、もう少し余裕が取れるからです。
No.2
- 回答日時:
こんばんは。
>With Worksheets("データ")
> .Range("A2:N" & .Cells(.Rows.Count, 1).End(xlUp).Row).sort _
> Key1:=Range("E3"), Order1:=xlAscending, Key2:=Range("C3"), _
> Order2:=xlAscending, Key3:=Range("A3"), Order3:=xlAscending
>End With
上記マクロに関しては、他人が書いたもののようですから、それは、今のところ触れないことにしますが、Key1:=Range("E3")などのKeyは、アクティブシートという意味ですから、シートを限定した使い方だと思います。
本題はこちらになります。
>実行時エラー'-2147417848(80010108)'
>オートメーションエラーです。
>起動されたオブジェクトはクライアントから切断されました。
>と表示されます
[ マクロ ] エラーになったりならなかったりする
http://oshiete.goo.ne.jp/qa/8484198.html
こちらに書きましたが、未だ、解決する見通しは立っておりません。
確か、ご質問者さんは、Excel2003ですから、今、何に対して、オートメーション・エラーを起こしているのか分かりません。
エラーの意味は、オブジェクトが生成されていたものが死んでしまって、そのオートメーションの残骸にアクセスしようとしているということなのですから、今、その範囲は限られるはずです。
VBA上のエラーですが、その戻り値は、Cのエラーです。
>フォーム上のテキストボックスにデータが記入されています。
これは、文章として、ユーザーフォームのことでしょうか。
もし、そうですと、実務上は、意外に気をつけなくてはならない部分があります。
もしかして、1つのTextBoxに対して、取得したテキスト・データが大きすぎるのかもしれません。
それで、TextBoxが死んでしまうかもしれません。
もし、そうなら、設計の根本から変えたほうがよいでしょう。
Range("A1").Resize(Ubound(a),1) = Application.Transpose(a)
として、セルに張り付けすること自体は、エラーが発生する要素はありませんが、Excel 2003の配列のデータ量は、公開はされていないのですが、およそ5~6,000個(セル数)の間ぐらいだったと思います。
回答ありがとうございます。
ご指摘通り、Textboxが死んでいるのかもしれません。
データは多いときに数十万という文字列が記入されます。
http://okwave.jp/qa/q8452163.html
VBA フォーム上textbox指定範囲の抜き出し
上記方法を採用しております。
しかし、テキストボックス上には全ての文字データが入っておらず、途中で終わっているような状態でした。
セルに書き込んで、結果を読み込むようにすれば
上手くいきますか?
回答ありがとうございました^^
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
許せない心理テスト
私は「あなたの目の前にケーキがあります。ろうそくは何本刺さっていますか」と言われ「12本」と答えたら…
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
VBA実行時エラー1004 ソート失敗
Visual Basic(VBA)
-
Excel VBAにてソートが上手くいかない
その他(Microsoft Office)
-
マクロでセルを1行下に移動する方法
Excel(エクセル)
-
-
4
エクセル 日付による並べ替えのマクロ
Excel(エクセル)
-
5
VBA ソートすると、1、11、2,3になって・・
Excel(エクセル)
-
6
エクセルVBA、ステップモードと結果が異なる
その他(Microsoft Office)
-
7
VBAにて 文字と数字が混在してるデータの並び替え
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
VBAがブレークモードになっ...
-
Excel2007でWebサービスを利用...
-
実行時エラー3001「引数が間違...
-
なぜこんな初歩的なVBAのIf文で...
-
[Delphi] データセットは閉じて...
-
OLEDB.NETで接続できない
-
VBで構造体を使うさ際の64k...
-
ExcelVBA Range クラスの Page...
-
VBAでのエラー
-
Outlook.ApplicationをCreateOb...
-
VBS実行時エラー オブジェクト...
-
マクロについて教えてください...
-
VBAでESCキーを無効にしたいの...
-
VB6のDateDiff関数が、お客さん...
-
【Excel VBA】マクロをボタンに...
-
Access2000での未定義関数repla...
-
1列目の何行目に検索文字がある...
-
テキストボックスに記述した数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
VBAがブレークモードになっ...
-
なぜこんな初歩的なVBAのIf文で...
-
【Excel VBA】マクロをボタンに...
-
VBSで変数の宣言はできないので...
-
VBS実行時エラー オブジェクト...
-
実行時エラー3001「引数が間違...
-
ExcelVBA Range クラスの Page...
-
ExcelVBAで、ユーザー定義型は...
-
EXCEL VBAマクロ中断でデバッグ...
-
マクロについて教えてください...
-
プロシージャ名の取得
-
ADODB.Streamを使用してUTF-8を...
-
実行時エラー -'-2147417848
-
Outlook.ApplicationをCreateOb...
-
VBAでのエラー
-
なぜエラーになるのでしょうか...
-
VBAのコードがエラーになっ...
-
[Delphi] データセットは閉じて...
おすすめ情報