
VBAで並べ替え(ソート)するコードを使用しています。
ソートする対象の文字列が非常に長いので、
変数に格納しようと考え、コードを書き換えしましたが、
「型が一致しません」というエラーになります。原因が自分ではわからないのですが、どなたか教えていただけませんでしょうか?
<変更前>
Sub hm()
Dim wb As Workbook
Dim bk As Workbook
Dim ws As Worksheet
Dim n As Long
Set ws = ActiveSheet
Dim メニュー一覧 As String
メニュー一覧 = "朝食プランA,朝食プランB,朝食プランB,朝和定食,朝洋定食,コーヒーセット"
ws.Range("G12:W21").Select
ws.Sort.SortFields.Clear
ws.Sort.SortFields.Add Key:=Range("V12:V21"), _
SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
"朝食プランA,朝食プランB,朝食プランB,朝和定食,朝洋定食,コーヒーセット", DataOption:=xlSortNormal
ws.Sort.SortFields.Add Key:=Range("W12:W21"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortTextAsNumbers
With ws.Sort
.SetRange Range("G12:W21")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End sub
<変更後>
Sub hm()
Dim wb As Workbook
Dim bk As Workbook
Dim ws As Worksheet
Dim n As Long
Set ws = ActiveSheet
Dim メニュー一覧 As String
メニュー一覧 = "朝食プランA,朝食プランB,朝食プランB,朝和定食,朝洋定食,コーヒーセット"
ws.Range("G12:W21").Select
ws.Sort.SortFields.Clear
ws.Sort.SortFields.Add Key:=Range("V12:V21"), _
SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder:= _
メニュー一覧, DataOption:=xlSortNormal
ws.Sort.SortFields.Add Key:=Range("W12:W21"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortTextAsNumbers
With ws.Sort
.SetRange Range("G12:W21")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) Excel_マクロ_現在開いているシートにマクロを実行したいです 1 2023/02/14 23:54
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) Excel vbaについての質問 3 2023/04/18 16:14
- Visual Basic(VBA) Excel VBAで並べ替えをしたい 3 2023/02/25 09:31
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Excel(エクセル) エクセル 値をコピペした時に、条件付き書式で塗られた背景色もペーストさせる 2 2023/04/05 17:21
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
11時に朝食(ブランチ)を食べ...
-
ダイエット中に果物の缶詰めっ...
-
朝食を4時半に食べたら太る?
-
いつも朝昼ほぼ食べない(飲み物...
-
17時頃夕飯食べる家はあります...
-
夕食はウィダーインゼリーでも...
-
キッチンのない会社の寮 食生...
-
朝食を食べるは二重表現ですか?
-
一日一食ダイエットについて
-
毎日朝食取りますか?
-
旅行に出かけて、宿泊施設に入...
-
朝起きてからの行動について 朝...
-
朝昼の飯は氷飴をなめて、よる...
-
無理してでも朝ごはんは食べた...
-
朝食を食べる人は何の為?
-
部分的にお肉がつく食べ物教え...
-
仕事を初めてどんどん痩せ始め...
-
平日の朝、食欲がわかず毎日カ...
-
朝食を取らない人
-
朝からカレーって食べれますか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
17時頃夕飯食べる家はあります...
-
朝食を4時半に食べたら太る?
-
ダイエット中に果物の缶詰めっ...
-
平日の朝、食欲がわかず毎日カ...
-
11時に朝食(ブランチ)を食べ...
-
キッチンのない会社の寮 食生...
-
朝四時ごろのご飯は太る? その...
-
明日、お昼にスイパラに行きま...
-
朝起きてからの行動について 朝...
-
朝食をがっつり食べると、毎日...
-
夕食はウィダーインゼリーでも...
-
朝食を食べるは二重表現ですか?
-
仕事を初めてどんどん痩せ始め...
-
無理してでも朝ごはんは食べた...
-
お腹が空いてないときでも,食...
-
朝食後の眠気
-
1日2食でもいいの?
-
いつも朝昼ほぼ食べない(飲み物...
-
1日2食で大丈夫な人(むしろ3食...
-
★喫食、喫食率とは?★
おすすめ情報