Excelで得意先一覧表という表を作り、
売上合計で並び替えをしようとしたら、
1番左端のコードと得意先名しか並び変わりません
右の方にあるデータが全然動きません。
原因を知っている方がいれば是非教えて下さい。お願いします

A 回答 (3件)

一番左側の箇所と右側のデータの間に空白の列(セル)はありませんか?


そうであれば、空白セルの左側だけしか並び替えられません。

また、表全体(見出し行を除く)をエリア指定から並べ替え実行すれば治ると思います。
    • good
    • 0

表全体をまず選択して「データ」「並べ替え」で


並べ替えのダイアログボックスを出して、条件を設定すると
まちがいなく並べ替えることができると思います。

データの先頭行は項目名か、データなのかも気をつけましょう。

ツールバーのAZ↓ボタンが使えるのは、
表のまわりのセルが空白セルであることが条件です。
また、表の中のセルをアクティブにしておくこと。
    • good
    • 0

コマンドの「AZ↓」ボタンではなく、メニューバー「データ」の「並べ替え」で開始した時、並べ替えるデータの範囲が黒く選択されます。



この時、一覧全てが選択されていますか?
それに並べ替えのダイアログの「範囲の先頭行」は「タイトル」が選択されているでしょうか。
    • good
    • 0

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

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

このQ&Aを見た人が検索しているワード

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

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Q縦並びデータを横並びに加工(Excel、CSV)

以下のようなCSVデータがあります。
県名,品物名,購入者
青森,りんご,西田さん
青森,りんご,斉藤さん
青森,りんご,山田さん
愛媛,キウイ,島田さん
愛媛,みかん,石川さん
愛媛,みかん,佐藤さん
愛媛,みかん,田中さん
愛媛,みかん,小林さん





これを以下のように加工したいです。

県名,品物名,購入者1,購入者2,購入者3,購入者4・・・・・購入者100
青森,りんご,西田さん,斉藤さん,山田さん
愛媛,みかん,石川さん,佐藤さん,田中さん,小林さん
愛媛,キウイ,島田さん




要は、品物名でグループ化し、購入者の値を横並びにして項目名は連番にしたいです。
(項目名の連番は最後に手作業でも問題なし)
エクセルの手作業でならできましたが、品物名が500を超える場合があり、
購入者の数も100近くになるため、毎週こういうことはできないため、
エクセルやアクセスでなるべく簡単にできたらいいと思います。
スマートな方法のアイデアがあったらご教授ください。

Aベストアンサー

こんにちは!
VBAになってしまいますが、一例です。
Sheet1のデータをSheet2に表示するようにしてみました。

Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面に
↓のコードをコピー&ペーストしてマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)

Sub Sample1() 'この行から
Dim i As Long, endRow As Long, wS1 As Worksheet, wS2 As Worksheet
Set wS1 = Worksheets("Sheet1") '←「Sheet1」は実際のSheet名に!
Set wS2 = Worksheets("Sheet2") '←「Sheet2」も実際のSheet名に!
Application.ScreenUpdating = False
wS2.Cells.ClearContents
endRow = wS1.Cells(Rows.Count, "A").End(xlUp).Row
wS1.Range("A1").Resize(, 2).Copy wS2.Range("A1")
wS1.Range("A:A").Insert
With Range(wS1.Cells(1, "A"), wS1.Cells(endRow, "A"))
.Formula = "=B1&C1"
.Value = .Value
.AdvancedFilter Action:=xlFilterInPlace, unique:=True
End With
endRow = wS1.Cells(Rows.Count, "A").End(xlUp).Row
Range(wS1.Cells(2, "B"), wS1.Cells(endRow, "C")).Copy wS2.Cells(2, "A")
With wS1
.ShowAllData
.Range("A:A").Delete
End With
For i = 2 To wS2.Cells(Rows.Count, "A").End(xlUp).Row
With wS1.Range("A1").CurrentRegion
.AutoFilter field:=1, Criteria1:=wS2.Cells(i, "A")
.AutoFilter field:=2, Criteria1:=wS2.Cells(i, "B")
endRow = .Cells(Rows.Count, "A").End(xlUp).Row
Range(.Cells(2, "C"), .Cells(endRow, "C")).Copy
wS2.Activate
ActiveSheet.Cells(i, "C").Select
Selection.PasteSpecial Paste:=xlPasteValues, Transpose:=True
End With
Next i
For i = 3 To wS2.UsedRange.Columns.Count
wS2.Cells(1, i) = wS1.Cells(1, "C") & i - 2
Next i
Application.ScreenUpdating = True
wS1.AutoFilterMode = False
End Sub 'この行まで

こんなんではどうでしょうか?m(_ _)m

こんにちは!
VBAになってしまいますが、一例です。
Sheet1のデータをSheet2に表示するようにしてみました。

Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面に
↓のコードをコピー&ペーストしてマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)

Sub Sample1() 'この行から
Dim i As Long, endRow As Long, wS1 As Worksheet, wS2 As Worksheet
Set wS1 = Worksheets("Sheet1") '←「Sheet1」は実際のSheet名に!
Set wS2 = Worksheets("Sheet...続きを読む

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Qエクセルの並び替えでアイコンを使うと2行目が並び替わらない。

エクセルの並び替えでアイコンを使った場合、昇順・降順いずれも
2行目(タイトル行の一つ下の行)が固定されたまま、3行目以下で
並び替えがされてしまいます。

具体的には
NO. 氏名    得点
1   山田太郎  75
2   鈴木和夫  63
3   佐藤正行  70
4   前田義彦  89

↓ 並び替え実施

NO. 氏名    得点
1   山田太郎  75
4   前田義彦  89
3   佐藤正行  70
2   鈴木和夫  63

、となってしまい、本来3番目(4行目)になるはずの2行目の
山田太郎が、2行目に固定されて並び替えの範囲に入らないのです。

エクセルとは長くつき合っているんですが、どうしてもうまく
いきません。どなたかお教えください。
ちなみに、書式は2~5行目は同じです。
よろしくお願い申し上げます。
   

Aベストアンサー

オートフィルタなどを使っていたら一度解除すると良いです。
そうではない場合は、全データをコピーして、別のシートへ 値 だけ貼り付けてみて下さい。

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Qexcelで横並びグループを縦並びに変換する方法を教えて下さい

エクセルの表の縦横変換について質問です。
「コピー」→「形式を選択&縦横変換」では出来ないので関数かVBAになると思いますがこれらが苦手なモノで質問させていただきました。

現在の並び
コードA コードBコードC コードDコードE …
サイズA サイズBサイズC サイズDサイズE …
数 量A 数 量B数 量C 数 量D数 量E …
重 量A 重 量B重 量C 重 量D重 量E …
区 分A 区 分B区 分C 区 分D区 分E …

これを下のようにしたいのですが、良い関数などは無いでしょうか??

コードA
サイズA
数 量A
重 量A
区 分A
コードB
サイズB
数 量B
重 量B
区 分B
コードC
サイズC
数 量C
重 量C
区 分C
コードD
サイズD
数 量D
重 量D
区 分D
コードE
サイズE
数 量E
重 量E
区 分E

既出の質問http://oshiete1.goo.ne.jp/kotaeru.php3?q=1263622
に似ているのでこの関数をベースにいろいろやってみたのですが自分では解決できず相談させていただきました。
よろしくお願いします。

エクセルの表の縦横変換について質問です。
「コピー」→「形式を選択&縦横変換」では出来ないので関数かVBAになると思いますがこれらが苦手なモノで質問させていただきました。

現在の並び
コードA コードBコードC コードDコードE …
サイズA サイズBサイズC サイズDサイズE …
数 量A 数 量B数 量C 数 量D数 量E …
重 量A 重 量B重 量C 重 量D重 量E …
区 分A 区 分B区 分C 区 分D区 分E …

これを下のようにしたいのですが、良い関数などは無いでしょうか??

コー...続きを読む

Aベストアンサー

数式の方法です
A7セルなら
=INDEX($A$1:$E$5,MOD(ROW(A5),5)+1,ROW(A5)/5)
下へオートフィル

作業列を設けたB7セルなら(添付図)
=INDEX($A$1:$E$5,MOD(A7,5)+1,A7/5)
下へオートフィル

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Qマクロ:横並びデータを縦並びに変更

添付のように、横に並んでいるデータを、
縦に並べ変えるマクロを組みたいのですが、
ネットで検索して、組んでみたのですが、
基本的な知識がなくてうまくいきません。

データ量もあり、頻繁に発生する作業なので、
教えて頂けると大変助かります。

よろしくお願い申し上げます。

Aベストアンサー

Option Explicit
Option Base 1
Sub データ正規化()
  Dim i As Integer
  Dim j As Integer
  Dim k As Integer
  Dim 国 As String
  Dim 品番 As String
  Dim カラー As String
  Dim 転送元 As Worksheet
  Dim 転送先 As Worksheet
  Set 転送元 = Worksheets("Sheet1")
  Set 転送先 = Worksheets("Sheet2")
  i = 2
  j = 0
  While 転送元.Cells(i, 1) <> ""
    国 = 転送元.Cells(i, 1)
    品番 = 転送元.Cells(i, 2)
    カラー = 転送元.Cells(i, 3)
    k = 1
    While Cells(i, k * 2 + 2) <> ""
      j = j + 1
      転送先.Cells(j, 1) = 国
      転送先.Cells(j, 2) = 品番
      転送先.Cells(j, 3) = カラー
      転送先.Cells(j, 4) = 転送元.Cells(i, k * 2 + 2)
      転送先.Cells(j, 5) = 転送元.Cells(i, k * 2 + 3)
      k = k + 1
    Wend
    i = i + 1
  Wend
End Sub

データはSheet1の2行目からA列が空白になるまで
D列以降はサイズと数量の2列1組で複数組
出力はSheet12の1行目から
という仕様で書いてみました

現在酔っ払っているので解説が必要なら後日

Option Explicit
Option Base 1
Sub データ正規化()
  Dim i As Integer
  Dim j As Integer
  Dim k As Integer
  Dim 国 As String
  Dim 品番 As String
  Dim カラー As String
  Dim 転送元 As Worksheet
  Dim 転送先 As Worksheet
  Set 転送元 = Worksheets("Sheet1")
  Set 転送先 = Worksheets("Sheet2")
  i = 2
  j = 0
  While 転送元.Cells(i, 1) <> ""
    国 = 転送元.Cells(i, 1)
    品番 = 転送元.Cells(i, 2)
    カラー = 転送元.C...続きを読む

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Qエクセル並び替え、ひらがなカタカナで並び分ける

並び替えをすると、ひらがなとカタカナを分けてくれません

並べ替えをしたい一つの文字列の中にもに、ひらがなとカタカナが混ざっています
色々調べたのですが、上手い方法が見つかりません、教えて下さい
少々ならマクロも使えます

ああ
あア
ああ
あア

ああ
ああ
あア
あア

あるいは

あア
あア
ああ
ああ

に、なるようにしたいです
お願いいたします

Aベストアンサー

本来は、ひらがなとカタカナの文字コードは別なのでちゃんと並び変わるはずです。
しかし、Excelのいくつかのバージョンではデフォルトで「ふりがな検索」に
なっているので、「あ」と「ア」は同じ文字と認識されます。
並びかえオプションで「ふりがな検索」をはずしてみてください。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング