アクセスでADOを使っているのですが、
Sub test()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Set cn = CurrentProject.Connection
rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM Q1", cn, adOpenStatic, adLockPessimistic
rs.Sort = "受付日 DESC"
For i = 1 To rs.RecordCount
・
・
・
このようなコードを作っていますが、
rs.Sortの部分で、「並べ替えを適用できません」になります。
レコード数は、15000件くらいです。
なぜ並べ替えができないのでしょうか?
しょうがないからクエリで最初から並べ替えしておきますが、原因を教えてください。
No.1ベストアンサー
- 回答日時:
おかしな所は見当たらないですね。
こちらでも検索してみましたが、ソートするフィールドの型によってもその実行時エラーが
発生するみたいですね。(メモ型らしいですけど)
直接的な解決策ではありませんが、ORDER BY句を指定するのはダメですか?
Sub test()
Dim cn As ADODB.Connection'ここでNewするのはやめましょう。
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
Set cn = CurrentProject.Connection
'rs.CursorLocation = adUseClient 不要
rs.Open "SELECT * FROM Q1 ORDER BY 受付日 DESC ;", cn, adOpenStatic, adLockPessimistic
For i = 1 To rs.RecordCount
recordsetを取得してから並び替える必要があるならダメですが、そうでないなら
ORDER BY句で対応された方がいいのではないでしょうか。
Q1(クエリ)に例えば受付日が昇順に設定されていても、ADOで開く時のORDER BY句が優先されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) Excel VBAで並べ替えをしたい 3 2023/02/25 09:31
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- その他(Microsoft Office) 1の行を固定した上でVBAを用いて日付順に自動並べ替え 2 2022/06/06 15:09
- Visual Basic(VBA) 正規表現を用いての並び替え 7 2022/04/04 09:27
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) エクセル VBAについて 2 2022/05/16 16:33
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Access 昇順・降順で並び替えできない
その他(データベース)
-
実行時エラー3001「引数が間違った型、許容範囲外、または競合しています。」
Visual Basic(VBA)
-
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
-
4
アクセスで入力したデータの順番が変わってしまいます
その他(ビジネス・キャリア)
-
5
ADOのCursorLocationプロパティ
Visual Basic(VBA)
-
6
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
7
レコードセット(ADO.Recordset)で処理レコードは何番目?
Visual Basic(VBA)
-
8
ACCESSでデータ読み取り専用を解除する方法
その他(データベース)
-
9
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
10
ACCESSでフォームのチェックボックスにチェックを入れて任意の数値を入力したい!!!
Access(アクセス)
-
11
ODBCの接続に失敗しました(3146)について
その他(Microsoft Office)
-
12
Access サブフォームでの選択行の取得
その他(データベース)
-
13
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
14
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
15
アクセスVBAのMe!と[ ]
Access(アクセス)
-
16
実行時エラー 3020の対策
Access(アクセス)
-
17
ACCESS クエリーでソートの不具合
その他(データベース)
-
18
「RunSQL」と「Execute」の違い
Access(アクセス)
-
19
Access2013にてドラッグ&ドロップにてファイルパスを取得する方法
Visual Basic(VBA)
-
20
アクセス VBAで列の入れ替え データシートビュー
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
accessでフィールド追加のあと...
-
Access クエリで変数を参照する...
-
2つ目のレコードの値を取得す...
-
クリスタルレポートで困ってい...
-
日付と文字列を条件としてDLook...
-
クリスタルレポート(8.5)の書式...
-
C#での複数フィールドの条件付...
-
クリスタルレポートで文字列の...
-
クリスタルレポートの式フィー...
-
Accessのフィールド名に半角括...
-
ACCESSデータベースにV...
-
テーブルのデータ型の変更がで...
-
DataTableに特定のフィールドが...
-
CurrentRecord について
-
ttlについて…
-
Notesのフォームを動的に・・・
-
AccessVBAで他テーブルのデータ...
-
アクセスでADO 並べ替えが適用...
-
NULLを含む文字列の結合で...
-
ADOでNullフィールドの抽出
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessのフィールド名に半角括...
-
DataTableに特定のフィールドが...
-
accessでフィールド追加のあと...
-
INT64対応のprintf系関数はあり...
-
2つ目のレコードの値を取得す...
-
Access 2010で実行時エラー3061
-
日付と文字列を条件としてDLook...
-
AccessのDAOでフィールド名を配...
-
SQLで複数のテーブルと結合した...
-
テーブルのデータ型の変更がで...
-
フィールド名をループの添え字...
-
クリスタルレポート(8.5)の書式...
-
AccessVBAで他テーブルのデータ...
-
Accessの画像挿入のVBAコード
-
アクセスでADO 並べ替えが適用...
-
NULLを含む文字列の結合で...
-
クリスタルレポートで文字列の...
-
ACCESSデータベースにV...
-
ノーツ:ユーザ名から別名を取...
-
Access クエリで変数を参照する...
おすすめ情報