一人で入力する時にはならないのですが、複数人で入力した後、1つのシートにデータをコピペしてから、並べ替えを行うと、並べ替えが分かれてしまいます。
例えば・・・









と並んでほしいのに









といった感じになってしまいます。

よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こんにちは



 以下のページがご参考になるのでは?

【エクセル技道場】-編集-並べ替えがうまくいかない
http://www2.odn.ne.jp/excel/waza/edit.html#SEC34

参考URL:http://www2.odn.ne.jp/excel/waza/edit.html#SEC34
    • good
    • 0
この回答へのお礼

以前にも同じ質問をしたことがあるのですが、解決にはいたらずにいました。
まさしく、文字と数字が混在したデータです。
大変役にたちました。
ありがとうござました。

お礼日時:2001/10/10 09:50

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

このQ&Aと関連する良く見られている質問

Q【VBA】シート1の入力表をシート2に並び替えて表示させたい【VBA】

はじめて質問させて頂きます。
駄文で伝わりづらいかと思いますが、大変困っておりますので、ご教授下さい。宜しくお願いします。

【シート1】

      商品コード
店舗コード 001  002 003
0000A  ¥1   ¥2  ¥3
0000B  ¥4   ¥5  ¥6
0000C  ¥7   ¥8  ¥9

【シート2】

店舗コード 商品コード 金額
0000A  001   ¥1
0000A  002   ¥2
0000A  003   ¥3
0000B  001   ¥4
0000B  002   ¥5
0000B  003   ¥6
0000C  001   ¥7
0000C  002   ¥8
0000C  003   ¥9

★実現したいこと
VBAを用いて、シート1にて入力した内容を、シート2のように並べ替えて表示したい。

★条件
店舗コード→可変(A列で上から拾いNULLまでループ)
商品コード→固定(上記例だと001~003の3つ)
金額→可変

以上です。当方VBA初心者ですが宜しくお願いします。

はじめて質問させて頂きます。
駄文で伝わりづらいかと思いますが、大変困っておりますので、ご教授下さい。宜しくお願いします。

【シート1】

      商品コード
店舗コード 001  002 003
0000A  ¥1   ¥2  ¥3
0000B  ¥4   ¥5  ¥6
0000C  ¥7   ¥8  ¥9

【シート2】

店舗コード 商品コード 金額
0000A  001   ¥1
0000A  002   ¥2
0000A  003   ¥3
0000B  ...続きを読む

Aベストアンサー

それほど詳しくはないですが、こんなかんじでしょうか

Option Explicit

Sub sample()
Dim y As Integer
Dim i As Integer
Dim x As Integer
i = 2
y = 3
Do Until Sheets(1).Cells(y, 1).Value = ""
For x = 2 To 4
Sheets(2).Cells(i, 1).Value = Sheets(1).Cells(y, 1).Value
Sheets(2).Cells(i, 2).Value = Sheets(1).Cells(2, x).Value
Sheets(2).Cells(i, 3).Value = Sheets(1).Cells(y, x).Value
i = i + 1
Next
y = y + 1
Loop

End Sub

それほど詳しくはないですが、こんなかんじでしょうか

Option Explicit

Sub sample()
Dim y As Integer
Dim i As Integer
Dim x As Integer
i = 2
y = 3
Do Until Sheets(1).Cells(y, 1).Value = ""
For x = 2 To 4
Sheets(2).Cells(i, 1).Value = Sheets(1).Cells(y, 1).Value
Sheets(2).Cells(i, 2).Value = Sheets(1).Cells(2, x).Value
Sheets(2).Cells(i, 3).Value = Sheets(1).Cells(y, x).Value
i = i ...続きを読む

QExcel時間別に並び替えて、件数を入力したい。 添付したようなデータがあります。時間別に並んだ右

Excel時間別に並び替えて、件数を入力したい。

添付したようなデータがあります。時間別に並んだ右側のデータを左側のデータ0時〜3時、3時〜6時のセルに件数を入力したいです。日付は必要なく、時間帯の件数を入力します。よろしくお願いします。

Aベストアンサー

#5です。
また間違えました。
そそっかしくてすみません。

  C3セルには =COUNTIF($N:$N,1)
  D3セルに、 =COUNTIF($N:$N,2)

以下J列まで3,4,5・・・7,8と設定します。

K3(合計)は =Sum(C3:J3)

Qエクセルで同じA列の中に、1,2,3,4,5,6,2,3,4,2,1,3,2,2,2,3,1という

エクセルで同じA列の中に、1,2,3,4,5,6,2,3,4,2,1,3,2,2,2,3,1,3,1というような順番で数字が並んでいます。

その数字の中で、1→3と3→1になるものがいくつあるか求めたいのですが、出す関数・マクロがわかりません。
教えていただけないでしょうか?

よろしくお願いします。

Aベストアンサー

こんばんは!

>A列の中に
とは行方向に数値が入っている!というコトでしょうか?

そうであれば
表示したいセルに
=COUNTIFS(A1:A1000,1,A2:A1001,3)+COUNTIFS(A1:A1000,3,A2:A1001,1)
としてみてください。

「1」の次の行が「3」の場合と
「3」の次の行が「1」の場合をプラスしています。m(_ _)m

QExcelで例えば薬局のチラシで、 3/2 パブロン 3/2 正露丸 3/2 カロナール ‥‥‥ 3

Excelで例えば薬局のチラシで、
3/2 パブロン
3/2 正露丸
3/2 カロナール
‥‥‥
3/3 入浴剤
3/3 サロンパス
3/3 マジックリン
‥‥
3/4 パブロン
3/4 エスタック
3/4 カロナール
‥‥
ともっと数が多くこれが、1か月あったとしたら、例えばパブロンなら次に登場するのは何日後か調べあいのです。各アイテムを、簡単な関数教えて下さい。宜しくお願いします。

Aベストアンサー

まずは隣(じゃなくても空いていればどこでもいいです)の列に、製品名と出てきた回数を組み合わせてID化したもの表示します。
仮にA列が日付、B列が製品名とし、CれつにIDを表示させるには、
C1=B1&"-"&COUNTIF(B$1:B1,B1)
とでもしましょう。(データの数コピーしてください)
例の場合、パブロン-1、正露丸-1、カロナール-1、…といった表示になるかと思います。

そしてD列(もしくは次の日にちを表示させたい列)に、その行までに出てきた個数を利用して、次のIDを検索し、日付の差を求めて表示します。
D1=INDIRECT("A"&MATCH(C:C,B1&"-"&COUNTIF(B$1:B1,B1)+1,FALSE))-A1
例の場合ですと、まずMATCHによってC列からパブロン-2に一致するデータを検索し、(次のパブロンが3/4でB9にあるとして)9行目という検索結果の前にAを付け、INDIRECTによってA9のデータ=3/4を取得し、そこからA1のデータ=3/2を引いた、2という結果を表示してくれます。
その次のデータが存在しない場合はエラーとなりますので、次のデータがない場合に"なし"と表示するのであれば、
D1=IF(COUNTIF(B:B,B1)=COUNTIF(B$1:B1,B1),"なし",INDIRECT("A"&MATCH(C:C,B1&"-"&COUNTIF(B$1:B1,B1)+1,FALSE))-A1)
とすればよいかと。(データの数コピーしてください)

まずは隣(じゃなくても空いていればどこでもいいです)の列に、製品名と出てきた回数を組み合わせてID化したもの表示します。
仮にA列が日付、B列が製品名とし、CれつにIDを表示させるには、
C1=B1&"-"&COUNTIF(B$1:B1,B1)
とでもしましょう。(データの数コピーしてください)
例の場合、パブロン-1、正露丸-1、カロナール-1、…といった表示になるかと思います。

そしてD列(もしくは次の日にちを表示させたい列)に、その行までに出てきた個数を利用して、次のIDを検索し、日付の差を求めて表示します。
D1=INDI...続きを読む

Qエクセル2000の並び替え(漢字とひらがなをいっしょにして並び替えたい)

ネットでコピーしたものをエクセルに貼付け
あいうえお順に並び替えたいのですが、

漢字とひらがな、があり、並び替えると、ひらがな、ばかりが先に来て、
漢字が後になるのですが、ひらがなと漢字を区別せずび並び替えたいのですが、
方法はあるのでしょうか?
よろしくお願いします。

Aベストアンサー

簡単にできますよ。

なぜ並べ替えたときに漢字が、後になるかと言うと、「ネットでコピーして貼り
付けた」というのが、起因しているからです。

キーボードから直接入力した場合は、漢字と仮名が混じっていても「振り仮名を使う」
限りでは、希望どおりの並べ替えが、出来ます。

ということは、貼り付けた漢字に振り仮名がセットされていないのが原因ですから、
下記の手順で漢字に振り仮名をセットすれば出来ると思います。
但し、人名などの読み方は、様々ですので、完璧でないことは、言うまでもありません。

1. 並べ替えのキーになる漢字とかな混じりのセル範囲を選択します。

2. 使用しているシート名のタブを右クリックし、「コードの表示」を指定します。

3. 表示されたイミディエイトウィンドウ(表示されていない場合は、Ctrl+G )に
  次の1行をコピーし、貼り付けて、その文字上で<Enter>を押します。

Selection.SetPhonetic

4. この操作で漢字に仮名が、設定されますので確認します。

5. Alt+Q でExcelに戻り、通常の並べ替えの操作を行います。

6. 以上ですが、もし特定の範囲において頻繁にこの操作が、必要であれば、
 次のようなマクロを設定しておくと、簡単な操作で出来るかと思います。

Sub rubi_uchi()
'ルビ打ち、非表示
Dim retsu As String
Dim cel_ichi As String
Dim rec As Long
Dim kana As Variant
Dim strPhoText As Variant
Dim start_rec As Long
Dim end_rec As Long
retsu = "A" '   列を指定
start_rec = 1 '  開始行を指定
end_rec = 10000 '   終了行を指定
For rec = start_rec To end_rec
  cel_ichi = retsu & CStr(rec)
  Range(cel_ichi).Select
  strPhoText = ActiveCell
  kana = Application.GetPhonetic(strPhoText)
  ActiveCell.Characters.PhoneticCharacters = kana
  If Not IsEmpty(strPhoText) Then
    ActiveCell.Phonetics(1).CharacterType = xlHiragana
    'ActiveCell.Phonetics(1).CharacterType = xlKatakana
    Selection.Phonetics.Visible = False
  End If
Next rec
End Sub

簡単にできますよ。

なぜ並べ替えたときに漢字が、後になるかと言うと、「ネットでコピーして貼り
付けた」というのが、起因しているからです。

キーボードから直接入力した場合は、漢字と仮名が混じっていても「振り仮名を使う」
限りでは、希望どおりの並べ替えが、出来ます。

ということは、貼り付けた漢字に振り仮名がセットされていないのが原因ですから、
下記の手順で漢字に振り仮名をセットすれば出来ると思います。
但し、人名などの読み方は、様々ですので、完璧でないことは、言うまでも...続きを読む


人気Q&Aランキング

おすすめ情報