人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Excel VBAがお得意の方、どうぞお知恵をお貸しください。

下記URLにあるcsvファイルをご覧ください。
http://proxy.ymdb.yahoofs.jp/users/9b53dd53/bc/hatena/WT1017194735.csv?bcJ3swBBY8xT.1Z3

ここには6列のデータがあります。2列1組がセットです。

このうち一番左の組み合わせ(A列(ラベル)とB列(生データ))を用いて、このデータの絶対値によって大きい順に並べ替えられたグラフを描写したいのです(ラベルが目視で確認できればなおいいです)。なお、セルそのものを並べ替えるか否かは不問です。

さらにその並べ替えの結果、絶対値の小さい、下位20%を検出し、そのラベルと生データを別ワークシートに書き出すという作業をしたいのです。


これらはVBAで自動化可能でしょうか?できればVBAのコードをご教示いただけないでしょうか?
プログラミングのお得意な方、よろしくお願いいたします。

●質問者: expansion05
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:CSV Excel URL VBA グラフ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● takasiym
●25ポイント

http://www.apple.co.jp/

アップル

上記ダミーです。

以下のような手順で処理を行うVBAを作成してみました。

1.A列、B列を選択。

2.G列、H列にペースト、

3.I列にH列参照値の絶対値を出力。

4.G列からI列までをI列値に基づき昇順ソート。

自動化はここまでで、

後はG列とI列を選択すればウィザードに従って、

手動でグラフを作成する事ができます。

「絶対値の小さい、下位20%を検出し」というのが、

絶対値の最大値に対して20%を抽出するのか、

あるいは下位392件を抽出するのか分からなかったため、

下位20%を別ワークシートに書き出すVBAは作っておりません。

以下は、VBAのソースコードです。

VBAエディタを開き、

標準モジュールにペーストしてご利用下さい。

========================================================

Sub sorting()

Range(”A1:B1960”).Select

Range(”B1”).Activate

Selection.Copy

ActiveWindow.LargeScroll Down:=-23

ActiveWindow.ScrollRow = 1

Range(”G1”).Select

ActiveSheet.Paste

Range(”I1”).Select

ActiveCell.FormulaR1C1 = ”=ABS(RC[-1])”

Selection.Copy

Range(”I2”).Select

Range(”I2:I1960”).Select

ActiveSheet.Paste

Range(”G1:I1960”).Select

Application.CutCopyMode = False

Selection.Sort Key1:=Range(”I1”), Order1:=xlAscending, Header:=xlGuess, _

OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _

:=xlPinYin

End Sub

========================================================

宜しくお願いします。

◎質問者からの返答

ありがとうございました。下位20%は、パーセンタイルで下位20%ということです。絶対値で並べ替えたデータの下から全体の20%を検出し、それを一覧したかったのです。


2 ● atene1968
●25ポイント

http://www.hatena.ne.jp/

はてな

このURLはダミーです。

ご質問の内容が良く理解できません。

1.2次元のグラフを描画するとして、

縦軸、横軸はそれぞれ何になりますか?

2.ExcelのCVSファイルを拝見しましたが、「A,B列」のみのデータを下に処理を行えばよいのでしょうか?

◎質問者からの返答

1.A列とB列の処理だけです。A列がラベルであるので、x軸がラベル、y軸がデータがデフォルトかなと思ってます。まあ正直どちらでもいいですけど^^; 多分エクセルの自動描写だとそうなると思います。それをイメージしてました。

2.そういうことです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ