Excel総合相談所 83 at BSOFT
[2ch|▼Menu]
1:名無しさん@そうだ選挙にいこう
09/06/10 19:12:43

Excelに関する質問は、ここで!

▼━ 質問のしかた ━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に>>2-20あたりの注意書きやQ&Aを必ず読むこと。
★4 質問テンプレ(雛形)は必須じゃないけど、
   OSやExcelのバージョン、VBAの可否など(下記テンプレ1〜4の情報)は必須情報。

▼━質問テンプレ (出来れば使ってね) ━━━━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
【5 検索キーワード     】 Googleやヘルプでの検索キーワード

※【4】は、VBAはわからないけどコード書いてくれるならVBAでもいいって場合は「可」
  VBAを使うのは避けたいって場合は「否」にしましょう。丸投げする場合は、必要に応じてブックをアップすること。

※【5】は、あなたがGoogleやヘルプで検索した際に使ったキーワードを書いてください。
  まだ検索してないなら、質問の前にGoogleやヘルプで検索してみてください。
  URLリンク(www.google.co.jp)

前スレ
Excel総合相談所 82
スレリンク(bsoft板)



2:名無しさん@そうだ選挙にいこう
09/06/10 19:13:35
▼━質問時の注意・決まり事━━━━━━━━━━
・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F)
・2 図やコードを書く場合、TABや連続する半角スペースは無視されるので注意
・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。何レス使っても構いません。
・4 2回目以降の質問では名前欄に初回質問の番号を入れよう。
・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。
・6 バグ・動作上の不都合・仕様に関する質問などはマイクロソフトのサポートを受けましょう。
  ここは技術的な質問のみで。
・7 VBAはプログラム言語のVisualBasic(6以前)に近い処理が可能で Excelに関係ないことも出来ます。
  Excelの操作に関係ない部分は、スレ違いなのでここで聞かずにVB言語やAPI、COMについて自分で勉強し、
  どうしてもわからない部分はVBスレやAPIスレなどの該当スレで質問しましょう。
  但し向こうはプログラマのスレなので、構文規則などの最低限の事は覚えてから質問しましょう。
  ここみたいに丸投げはダメですよ。
・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。
  例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。
  その上で、どううまくいかないのかを具体的に書きましょう。
  エラーが出るなら、何処でどういうエラーが出るのか、
  想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。
・9 マルチはダメ。一度マルチしたら、謝っても他のスレの質問を取り下げても回答は得られないと思ってください。
・A テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、
  チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、
  ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
・B 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。



3:名無しさん@そうだ選挙にいこう
09/06/10 19:14:48
★ルールを無視すると…
 >>1-2あたりのルールに従うか否かは自由だけど、従わないと以下のような不利益があるよ

 ★1.マルチをしてしまったら…
 A.謝っても他での質問を取り下げても、以後その質問に対する回答は付かない物と思ってください。
   それが嫌なら初めからマルチなんてしないように。>>2にマルチ禁止と書いてあり、
   マルチの意味が分からなければ検索すれば出てくるので、「知らなかった」は通用しません。

 ★2.>>1★4に従わず、必要な情報を出さないと…
 A.自分の使用しているバージョンで使えない機能を答えられたり、VBA使えないとか使いたくないと書かないと
   VBAでの解決OKで自分でコード書けるものと勝手に解釈されて、「VBAで出来るから自分でコード書いて」程度の
   適当な回答を返されたりします。また、ここではVBAコード書けない人の丸投げ依頼を許可してますが
   これはきちんとルールに従って質問、依頼した人のみの特権です。

 ★3.情報・条件を後出しすると…
 A.後から出された情報は意図的に無視されたり、質問自体を放置されたりします。
   >>1★4の必須情報はもちろんのこと、要望や条件、既に試したことなどは、
   長文になってもいいので詳細かつ明確かつ具体的に書きましょう。


★VBAについて
 VBAとは、『Visual Basic for Application』の略で
  Application
  ├Workbooks
  |└Workbook
  |  ├Worksheets
  |  |└Worksheet
 というApplication以下のオブジェクトを、VB言語で操作するものを指します。 
 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。


4:名無しさん@そうだ選挙にいこう
09/06/10 19:16:18
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

 ▼環境・書式
  ・ 列数を256列以上、行数を65'536行以上に増やす (Excel2007では16'384列、1'048'579行扱える)
  ・ Excel2003以前で条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA)
  ・ 行の高さを0.25きざみ以下の単位で指定する
  ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト)
  ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける)
  ・ 祝日を判断する (作業セルに祝日を列挙、VBA)
  ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合)
  ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など
  ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
  ・ 罫線幅の自由指定
  ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA)
  ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整)

 ▼操作
  ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成)
  ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA)
  ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA)
  ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA)
  ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える)
  ・ 1セルを分割 (分割したいセル以外を結合)


5:名無しさん@そうだ選挙にいこう
09/06/10 19:17:16
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

 ▼数式・関数
  ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数)
  ・ 関数式でセルの選択状態を取得する (VBA)
  ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA)
  ・ 入力したセルに結果を返す (VBA)
  ・ 範囲を引数にしての文字列連結 (ユーザー定義関数)
  ・ 値の書き換え、値の保持 (VBA)
  ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む)
  ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA)
  ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数)

 ▼VBA
  ・ ExecuteExcel4Macroの参照で空セルと0値を区別する
  ・ セルの値や変数値で直接変数名を指定する (配列、コレクション)
  ・ VBのコントロール配列と同じような操作をしたい
   (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents)

 ▼ユーザーフォーム
  ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む)

 ▼グラフ
  ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる
   (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入)
  ┌┐
  〜〜
  ||


6:名無しさん@そうだ選挙にいこう
09/06/10 19:18:07
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。
間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。
Excel2007についても未確認な項目が多いので変更点が有ればご指摘下さい。

また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。
ここに書かれてないからといって必ず出来るはずだなんて思わないように。

>▼環境・書式
> ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
補足
2007ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、
指定も同じくcm単位でできる。
ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように
近い値に勝手に丸められる。

7:名無しさん@そうだ選挙にいこう
09/06/10 19:23:34
多数のブックを開いてシートを追加しながら集計し、R列の最下行+1に集計結果を書いています。
このとき、各シートをクリックしたらすぐに集計結果が確認できるよう
次のような荒業で見栄えを整えています。

Application.ScreenUpdating = True
Range("R65536").End(xlUp).Offset(1, 5).Select 'シートのレイアウト(見栄え)
Range("R65536").End(xlUp).Select 'カーソルを集計結果のポジションへ
Application.ScreenUpdating = False

これだと、当然ながら画面がチラチラするので改良したいのですが、
何か良い方法があるでしょうか?

8:名無しさん@そうだ選挙にいこう
09/06/10 19:38:16
>>7
msgboxとかのほうがいいんじゃないの
若しくは集計用のシートでも作って、そこにリンクさせるか

9:名無しさん@そうだ選挙にいこう
09/06/10 20:53:58
>>8
意味が分かりません。
msgboxなんか付けて週百回もOKをクリックしてたら、処理に10分くらい掛かると思います。
画面をチラチラさせずに、カーソルの位置とシートのレイアウトを統一したいんです。

10:名無しさん@そうだ選挙にいこう
09/06/10 20:54:56
× 週百回
○ 数百回

11:名無しさん@そうだ選挙にいこう
09/06/10 21:19:29
いろいろ調べたのですがいい物が見あたらないので・・・

【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 画像パス 画像を自動挿入

シート2に画像のアドレスを入力してゆきます。
シート1の指定した場所にシート2のアドレスを参照してその画像を適度な大きさに
変換して貼り付けて置くことは可能でしょうか?
シート2のアドレスを変更するとその画像も自動的に変わるようにしたいです。

出来ればVBA無しでくめれば最高なのですが、教えていただけますでしょうか?


12:名無しさん@そうだ選挙にいこう
09/06/10 21:22:51
_

13:名無しさん@そうだ選挙にいこう
09/06/10 21:49:09
>>11
無理

14:名無しさん@そうだ選挙にいこう
09/06/10 21:51:36
>>7
ScreenUpdatingをfalseのまま処理すりゃいいじゃん

15:名無しさん@そうだ選挙にいこう
09/06/10 22:13:35
>>14
falseのまま処理したら、selectしても動きません。
やってみれば一目瞭然です。

16:名無しさん@そうだ選挙にいこう
09/06/10 22:37:26
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ちょっとだけ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 オートフィルタ コピー

データをY列で並び替えてから、オートフィルタでB列とN列の空白セルを除きます。
Y列のトップ5(タイトル行を除いて上から5行)を選んで他のシートにコピーするとき、
空白があると5行がコピーできません。
Worksheets("HND").Range("A2:Y6").Copy _
Destination:=Worksheets("HVC").Range("A2")

ググって探して真似てみたけど、どうしてもうまくいきません。
Worksheets("HND").Range("A2:Y6").SpecialCells(xlCellTypeVisible).Copy _
Destination:=Worksheets("HVC").Range("A2")

どこを直せばいいの?(´Д⊂)ウワーン

17:名無しさん@そうだ選挙にいこう
09/06/10 22:54:12
>>15
Sub Macro1()
Sheets("Sheet1").Select
Application.ScreenUpdating = False
Application.Goto Reference:=Range("R65536").End(xlUp).Offset(1, 5), Scroll:=True
Range("R65536").End(xlUp).Select
Sheets("Sheet2").Select
Application.Goto Reference:=Range("R65536").End(xlUp).Offset(1, 5), Scroll:=True
Range("R65536").End(xlUp).Select
Application.ScreenUpdating = True
End Sub
動くけど
それとも何?selectしたら画面を動かしたいの??
それならRange("R65536").End(xlUp).Offset(1, 5).Select 'シートのレイアウト(見栄え) がいらん

18:名無しさん@そうだ選挙にいこう
09/06/10 23:45:38
>>17
Scroll:使って、「ScreenUpdatingをfalseのまま処理」と書いておきながら「動くけど」はねーだろwww
ま、いいや

19:名無しさん@そうだ選挙にいこう
09/06/11 00:43:04
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ハイパーリンク

セルにハイパーリンクでFTPサイトをリンクしたのですがクリックすると
「インターネットサイトのレポートによると、リクエストしたアイテムが
見つかりませんでした。(HTTP/1.0 404)」となってしまいます。
IEのバージョンは7です。
ハイパーリンクではftpサイトに接続することはできないのでしょうか?
アドレスは、fURLリンク(xxx:yyy@ftp)サイト て感じで設定しています。
よろしくお願いします。



20:名無しさん@そうだ選挙にいこう
09/06/11 02:08:30
>>19
IEにURLを入れると見れるけど、Excelのハイパーインクだとダメってこと?

21:名無しさん@そうだ選挙にいこう
09/06/11 06:30:27
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 ?
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】エクセル 印刷範囲 設定

A1にAと入ればB2:D10、Bと入ればB20:D30というように印刷範囲を変えたいです。
上記の検索でこのページを見つけ試しましたが、出来ませんでした。
URLリンク(xl-kobeya.seesaa.net)

検索ワードにマクロを入れるとボタンを作る方法を見つけましたが、
ボタンではなく、特定のセルに入った文字列により変えたいです。

どうかご教示ください。

22:名無しさん@そうだ選挙にいこう
09/06/11 06:56:05
>>21
Aのとき
Sub Macro1()
ActiveSheet.PageSetup.PrintArea = "$B$" & (Asc(Cells(1, 1)) - 95) & ":$D$" & (Asc(Cells(1, 1)) - 86)
End Sub

>B2:D10、Bと入ればB20:D30
範囲間違ってない?どういう基準で範囲が変わるのかよく分からない
変えれそうなら(Asc(Cells(1, 1)) - 95) と (Asc(Cells(1, 1)) - 86)を
(Asc(Cells(1, 1)) - 86)*2とかにかえて試行錯誤してみてください
無理ならレスください


23:名無しさん@そうだ選挙にいこう
09/06/11 09:24:11
>21
A1の値が"A"の場合とそうでない場合の2通りだけなら以下の手順でできます。3通り以上のときも
工夫すれば対応できると思う。(IndexとかMatchとか)

B1セルに計算式 =IF(A1="A","範囲A","範囲B") を入れておく。
あとはURLリンク(xl-kobeya.seesaa.net)のページを参考に
B2:D10の範囲を 範囲A、B20:D30の範囲を 範囲B と名前を設定する。
メニューバーの[挿入(I)]-[名前(N)]-[定義(D)] から
Print_Aria ←半角で大文字小文字間違えないように
の参照範囲を =INDIRECT(Sheet1!$B$1) とする。

自分の環境はWindowsXp(sp3),Excel2003ですが、ちゃんとできました。
もし、うまくいかないときは、Excelを終了・起動してみてください。


24:名無しさん@そうだ選挙にいこう
09/06/11 11:26:25
>>20
はい。そういうことです。
http://サイト だと IEのアドレスにコピーされて接続できるのですが、
fURLリンク(ID)<)サイトでも同じです。

Excelの仕様ということであればどうしょうもないのですが、
設定等で回避できるようなら教えてください。


25:名無しさん@そうだ選挙にいこう
09/06/11 11:52:14
>>24
ftpサーバーが存在しない、セキュリティソフトがftpアクセスを弾いているなどの理由でアクセスできない
とかいうことは無いですか


26:名無しさん@そうだ選挙にいこう
09/06/11 13:24:03
インターネットオプションは?
FTPフォルダビューを有効にする

27:名無しさん@そうだ選挙にいこう
09/06/11 14:23:31
>>25
ftpサイトのアドレスは、間違っておりません。

>>26
有効になってます。

IEでアドレスたたくときちんと表示されますし、、、

皆さんのPCでは、問題なくハイパーリンクでIEが起動してftpサイトに
アクセスできるということですか。。。


28:名無しさん@そうだ選挙にいこう
09/06/11 14:46:56
Excel2007を使ってます。

入力規則機能を使って
ドロップダウンリストから選択して入力してもらうようにしてます
そこで例えば、リストから○を選択すると背景が青
×を選択すると背景が赤になるように設定できないものでしょうか?

29:名無しさん@そうだ選挙にいこう
09/06/11 15:14:47
>28
条件付書式を利用します。
当方はExcel2003のため、リボンメニューについてはわからないのであしからず。

30:名無しさん@そうだ選挙にいこう
09/06/11 15:25:49
>>29
ありがとうございます。


31:名無しさん@そうだ選挙にいこう
09/06/11 15:34:47
エクセル2000使ってます
誤って上書き保存してしまった場合戻す方法教えてください。
お願いします

32:名無しさん@そうだ選挙にいこう
09/06/11 15:55:55
上書きしちゃったらどうにもならないです
スッパリあきらめたほうが早いです

33:名無しさん@そうだ選挙にいこう
09/06/11 16:10:40
>>32
ありがとうございます。

34:名無しさん@そうだ選挙にいこう
09/06/11 16:56:20
【1 OSの種類         .】 WindowsXP Pro SP3
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい (まぁ少しは)
【4 VBAでの回答の可否】 否

WebからデータをExcelに貼りつけているのですが、これに関して質問です。

1 データを保存しようとする度に下記のメッセージが表示されます

プライバシーに関する注意:このドキュメントには、マクロ、ActiveXコントロール、
XML拡張パックの情報、またはWebコンポーネントが含まれています。これらにはドキュ
メント検査機能で削除することができない個人情報が含まれる場合があります。

出さないようにする方法はありますか?

2 URLリンク(table.yahoo.co.jp)
でコピーしている最中に関係ない下の方のテキストボックスまで貼りつけてしまった
のですが、これって削除はどのようにすれば出来るのでしょうか?
貼りつけた範囲を含む所を選択して削除しても肝心のテキストボックスやリストボッ
クスの部分は削除できませんでした。




35:名無しさん@そうだ選挙にいこう
09/06/11 17:41:29
>>34
1 Excelのオプション→セキュリティセンター→セキュリティセンターの設定→ドキュメント固有の設定
  →チェックを外す

2 一番簡単な方法はそのシートを削除して新しいシートに貼り直す

36:名無しさん@そうだ選挙にいこう
09/06/11 19:07:59
>>35
1はでなくなりました。
2は、、、やはりそれが一番簡単なんでしょうね w

ありがとうございました。


37:名無しさん@そうだ選挙にいこう
09/06/11 19:44:26
>>34
2番目

まずExcelのオプションで「複数オブジェクトの選択」コマンドをツールバーに登録。
そして「[開発]タブをリボンに表示する」もチェックしておく。
ここまでが準備。最初に1回やるだけでいい。

手順の1. 開発タブを開き、デザインモードをONにする。

手順の2. さっき登録した「複数オブジェクトの選択」アイコンをクリックすると選択モードになる。
「すべて選択」→「OK」→Deleteキー

これで、テキストボックスなどの部品類が全部いっぺんに削除できる。

38:名無しさん@そうだ選挙にいこう
09/06/11 19:47:43
2003までみたいに範囲ドラッグでコントロール選択ってのはできなくなったん?

39:16
09/06/11 20:15:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ちょっとだけ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 オートフィルタ コピー

データをY列で並び替えてから、オートフィルタでB列とN列の空白セルを除きます。
Y列のトップ5(タイトル行を除いて上から5行)を選んで他のシートにコピーするとき、
空白があると5行がコピーできません。
Worksheets("HND").Range("A2:Y6").Copy _
Destination:=Worksheets("HVC").Range("A2")

ググって探して真似てみたけど、どうしてもうまくいきません。
Worksheets("HND").Range("A2:Y6").SpecialCells(xlCellTypeVisible).Copy _
Destination:=Worksheets("HVC").Range("A2")

どこを直せばいいの?

40:34
09/06/11 20:38:43
>>37
ありがとうございます。こんなやり方があるんですね。ビックリしました。

>>38
それで済んだら楽だったんですけどね w

41:名無しさん@そうだ選挙にいこう
09/06/11 20:53:37
>>39
分からん
Selection.AutoFilter
でオートフィルタ解除
若しくは
Sub a()
Range("d1").Formula = Range("c1").Formula
End Sub
みたいにするか

42:名無しさん@そうだ選挙にいこう
09/06/11 20:54:29
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 関数 

りんご 100円
みかん 120
バナナ 150
メロン  110
桃    130

1位 ???   ???円
2位 ???   ???円
3位 ???   ???円

これでX番目の「項目」と「値段」を自動的に表示させるには何の関数を
(組み合わせて)使えばいいのでしょうか?LARGE関数は項目までは
抽出できないみたいですし・・・。宜しくお願い致します。

43:名無しさん@そうだ選挙にいこう
09/06/11 20:59:48
>>39
こんなんでどうだ?

Sub 可視セルのみコピー()
  r = 6
  While Range("HND!A2:A" & r).SpecialCells(xlVisible).Count < 5
    r = r + 1
  Wend
  Range("HND!A2:Y" & r).Copy
  Range("HVC!A2").PasteSpecial
End Sub

44:名無しさん@そうだ選挙にいこう
09/06/11 21:07:14
値段が同じくだものがなければLOOKUPで

45:名無しさん@そうだ選挙にいこう
09/06/11 21:15:49
>>42
「円」は必ず書式設定でセルに反映させること、「りんご」はA1に入ってる前提で、いきます
C1=RANK(B1,$B$1:$B$5)
C5までオートフィル
A7=一位、A8二位A9三位
B7=INDEX($A$1:$A$5,MATCH(1,$C$1:$C$5,0),1)
B8=INDEX($A$1:$A$5,MATCH(2,$C$1:$C$5,0),1)
B9=INDEX($A$1:$A$5,MATCH(3,$C$1:$C$5,0),1)
C7=VLOOKUP(B7,$A$1:$B$5,2,0)
C9までオートフィル

vlookup、RANKは覚えておいた方がいいかも
本当はindex+matchがいいんだけどやや扱いにくい

46:名無しさん@そうだ選挙にいこう
09/06/11 21:20:04
パソコン初心者ですが表計算の資格を取るためにパソコンを購入しようと思っています

最低Excel2007が使えればいいんですがどのメーカーさんのを買えば入ってますか?
全てに入っているものなんでしょうか?それともソフトのような物を購入するのでしょうか?

パソコンの知識が全くないのでわかりません…

47:名無しさん@そうだ選挙にいこう
09/06/11 21:24:55
>>46
「Office入り」というのを選ぶとExcelとWordが入っている。
どこのメーカーでもOfficeあり、なし、両方用意してるから、Officeありのを選ぶこと。
あとは、まあどれを買っても同じ。好きな色で決めればいい。
ただ、あんまり安いのは動作が重いので仕事で使うにしろ勉強に使うにしろ能率が悪くなる。
目安としては、だいたい10万円でテレビ機能のないやつを買っとけばいい。

48:名無しさん@そうだ選挙にいこう
09/06/11 21:28:24
>>47
わかりました!ありがとうございました!

49:名無しさん@そうだ選挙にいこう
09/06/11 21:28:38
>>46
価格コムで調べればいくらでも出てくるだろ

大手メーカーのならだいたいOffice Personal 2007は入っているはず

ノートならこんなのとか
URLリンク(kakaku.com)

50:名無しさん@そうだ選挙にいこう
09/06/11 21:41:05
>>45
うおお、ありがとうございます!ちょっとレッスンしてみます。
また何かありましたら宜しくお願い致します。m(_ _)m

51:16=39
09/06/11 21:42:55
>>43
ありがとうです。
Do Whileは使ったとこがあるけど、Wendは初めて見ました。
勉強します・・・

>>41
ありがとうです。
43さんのが、そのものズバリです。

52:名無しさん@そうだ選挙にいこう
09/06/11 22:40:02
エクセル関連の掲示板を見てると「selectするな」って書いてる人がいます。
マクロの自動記録するとselectばかりしてますが、selectしては
いけない理由って何でしょうか?

53:名無しさん@そうだ選挙にいこう
09/06/11 22:46:47
>>52
1.速度的に不利、メンテナンス性も大きく損なわれる
2.コードの行数が少なくなる=マクロ全体の可読性が高まる


54:名無しさん@そうだ選挙にいこう
09/06/11 22:54:37
>>52
自動記録は最適化されてないから無駄が多い。
その中でも一番無駄な部分がいちいちSelectするところ。

55:名無しさん@そうだ選挙にいこう
09/06/11 23:09:03
>>53
速度を測ったこともあるんですが、2秒が3秒になったところで不利とも思えないし、
selectで改行した方が、視覚的に分りやすいのに?

>>54
張り詰めて仕事をするより、無駄口を叩きながらの方がいいでそ?
無駄って、マイナス要因ばかりじゃないと思うんだけどね。

56:名無しさん@そうだ選挙にいこう
09/06/11 23:35:37
>>55
2秒が3秒なら問題になることも少ないだろうが、
世の中には何時間もかかるマクロもあるんだぜ?
2時間が3時間じゃ無視するわけにいかん。

57:名無しさん@そうだ選挙にいこう
09/06/12 00:12:42
>>56
VBAで速度にこだわるのは滑稽。

58:名無しさん@そうだ選挙にいこう
09/06/12 01:22:25
目的の処理を行うのにselectする必要ないのにselectされると見難いんだよ普通に
オッサンがだらだら意味不明な前置きしてんのと一緒だな
簡潔に目的の処理を書けというのは当たり前すぎる


59:名無しさん@そうだ選挙にいこう
09/06/12 01:53:12
すいません、日数×時間=総時間を出したいのですが、
例えば3(日)×2.30(2時間30分)で"分"を60で繰り上げして=7.30という答えを導き出したいのですが、
この"分"の部分を60で繰り上げるにはどういう数式にしなければいけないんでしょうか?
Excelのバージョンは2000です。

60:名無しさん@そうだ選挙にいこう
09/06/12 05:45:52
時間の部分を2:30:00にすれば、答えが7:30:00になる。

61:名無しさん@そうだ選挙にいこう
09/06/12 05:50:04
縦に 「りんご, ぶどう, もも, バナナ, もも, バナナ, もも, バナナ, ぶどう, ぶどう」 と並んでるのですが,
出現回数ランキングを「1位 バナナ 200回 2位 もも 180回 ・・・」のように作るにはどうすればいいでしょうか.
出現する項目の種類が多いので,COUNTIFを使ってはできないと思うのですが・・・
関数だけでできればお願いします.

62:名無しさん@そうだ選挙にいこう
09/06/12 06:01:19
>>57
ハズレ

単体アプリケーションとしてVBアプリに速度を求めるのは滑稽だが
VBAでは事情が違う

VBAはあくまでも「Excelの操作の効率化」の為のモノだから
速度に拘るというか、速いにこしたことはないのは当然の摂理

アプリケーション製作用プログラム言語と
アプリケーション操作用マクロ言語を同列で考えちゃいけないよ

63:名無しさん@そうだ選挙にいこう
09/06/12 06:39:16
>>62
意味不明

64:名無しさん@そうだ選挙にいこう
09/06/12 07:37:17
selectは絶対に悪だから使うな、というわけではない
俺もマクロの最後にA1セルを選択したりすることはある
特にコマンドボタンに登録したマクロだと、フォーカスがコマンドボタンに残るからね

でも基本は>>53の二行目だろうね
記録したマクロをそのまま使うなんてそうそうないことだし、
手を加える時にいらない処理はどんどん削る。また人によっては削る行為(最適化)自体に快感を伴う場合もあるんじゃないかな
まーそうやって最適化してれば、後で手を加えるときに楽なんだよ。
教えられてそうするわけじゃない、学習した結果の行為

65:名無しさん@そうだ選挙にいこう
09/06/12 07:42:14
>>61
ピボットテーブル作って加工すれば?

66:名無しさん@そうだ選挙にいこう
09/06/12 07:52:36
>>64
速度の話じゃなくなってるね。

67:名無しさん@そうだ選挙にいこう
09/06/12 09:58:05
【1 OSの種類         .】 Windows Vista
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel2007 テーブル リスト

Excel2007でデータの管理をしようということになり、
2007から導入されたデータベース機能の「テーブル」を使おうと思っています。

現在、シートA、B、Cに、それぞれテーブルA、B、Cがあるのですが、
テーブルBのある列の入力規則にリストを使い、
そのリストのデータ元をテーブルAのある列にしたいと考えています。

そこで質問なのですが、

(1)別のテーブルのデータを元に、リストを作るのは可能でしょうか。
可能ならどのように指定すればいいのでしょうか。

(2)データベースのように、リストやセルに表示されるデータはデータ元の[列2]でも、
実際にデータとして入っているのはデータ元の[列1]である、というようなことは可能でしょうか。
名前を選んだらキーが入るというイメージです。
※こちらはできたらやりたいのですが、できなければあきらめます。

以上、よろしくお願いします。


68:名無しさん@そうだ選挙にいこう
09/06/12 10:15:18
>>66
vbaで速度なんて気にしても仕方ないだろう
よほど重い処理をしているなら、問題解決へのアプローチの仕方が間違っている

69:59
09/06/12 10:28:35
>>60
エラーが出て上手く行きませんでした。
試しに、:00をとって2:30にしてみた所、明治何年何月何日となってしまいました。
ちなみにこれはわかり難いですが、時計の何時ではなく、時間数です。
例えば、1時間30分を1.5時間と表す場合もありますが、この1.5時間を1時間30分に変更する方法でも良いです。


70:60じゃないよ
09/06/12 11:48:29
>59、69
横レスですが、以下のことをやってみてください。
A1セルに 3 を入力(日数のつもり)
B1セルに 7:30 を入力(時間の入力) ※7.30ではありません。
C1セルに計算式 =A1*B1 を入力
これだけでC1セルには 7:30 と表示されるはずですが。

>=7.30という答えを導き出したい
どうしても小数点形式で表示したいということでしょうか?
○時間△分を表すのに ○.△ は不適と思いますが。

71:59
09/06/12 11:58:48
>>70
レスありがとうございます。
希望どうりの表示ができました。
ありがとうございました。

72:名無しさん@そうだ選挙にいこう
09/06/12 12:31:43
>>69
Excelでは24時間を1と置いて計算するようになっている。
つまり1時間は1/24で、1.5時間は(1/24)*1.5で求めることができる。
電卓で計算してみると 1時間=1/24≒0.0416667
この数字を掛けて書式で"h時間m分"にすれば「1.5」が「1時間30分」に変換できる。

73:名無しさん@そうだ選挙にいこう
09/06/12 13:57:41
>>63
まぁ理解できないからこそ>>57みたいな発言が出てくるわけだから
言っても今の時点では意味不明なのは当然か

74:名無しさん@そうだ選挙にいこう
09/06/12 14:50:10
ExcelのVBAはその場しのぎの使い捨ての自分だけで使うプログラムを組むことが多いから
VBAを作成してから結果を得るまでがいかに早く(速くではなく)出来るかが重要に思うな。
俺の場合は。

「速さ」にこだわる人はVBAプログラミングの請負みたいなのを職業としてやってるんだろうから
それはそれで当然だと思う。

色んな場合を一緒くたにしてどうこう言うのが間違ってるよ。

75:名無しさん@そうだ選挙にいこう
09/06/12 14:52:54
やりたいようにやればいいじゃん

しゅごキャラがついてるよ

76:名無しさん@そうだ選挙にいこう
09/06/12 16:18:11
>>57
だよな。
美しさを求めた方がいいわな。
で結局汚いコードはほとんど遅い。


77:名無しさん@そうだ選挙にいこう
09/06/12 16:28:45
ボールをとる
とったものを投げる。

ボールを投げる

78:名無しさん@そうだ選挙にいこう
09/06/12 16:37:53
ある程度綺麗なコード、それこそselectを抜くだけでも勝手に速度も上がるよなぁ


79:名無しさん@そうだ選挙にいこう
09/06/12 16:43:16
お前らが会社辞めたりせずに最後まで自分で作ったものの
面倒見てくれさえすれば何でもいいですよ・・・
変なこだわりがある自信過剰な人ほどいきなり会社辞めたりするんで困るんですよ・・・

80:名無しさん@そうだ選挙にいこう
09/06/12 17:42:54
【1 OSの種類         .】 WindowsXPSP3
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA Sum関数 自動入力


質問です。

作成した表のA1〜O1が見出し行でそれよりしたに行数が300行ほどあります。
で最下行にSum関数が入っているのですが、中間に行挿入した場合はSum関数
も範囲が延長されますが、見出し行の真下に挿入した場合はSum関数の先頭
アドレスが変わっちゃいます。

これをチェインジイベントマクロもしくは標準のモジュールのマクロはどの
ようにすればいいのでしょうか?

81:80
09/06/12 17:58:44
すいません、追記です。

先頭行の真下だけでなく、Sum関数が入っている真上に行挿入した場合は
最終アドレスが変わります。

どちらのケースも対応させるようにしたいのですが。

82:名無しさん@そうだ選挙にいこう
09/06/12 18:35:17
頭使えよ 余分に範囲指定してその中で挿入すればいいだろうが

83:名無しさん@そうだ選挙にいこう
09/06/12 18:45:59
>余分に範囲指定してその中で挿入
A2が関数の先頭ならSum(A1:A300)としておけばいいが・・
最終行の範囲はどんすんのよw

84:名無しさん@そうだ選挙にいこう
09/06/12 19:04:09
データがA2:A300なら、A302に=SUM(A1:A301)と上下1行余分な式を入れれば良いだけだろ?

合計セルの前に空行が出来るが、計算上は全く支障無いし、見た目を整えたければ行の非表示も可能
またアウトライン使えば行の表示/非表示は1クリックで切り替えられる
301行にアウトライン設定して301行に行挿入すれば、アウトラインは302行に移って、式は=SUM(A1:A302)になる

85:名無しさん@そうだ選挙にいこう
09/06/12 19:11:22
>チェインジイベントマクロもしくは標準のモジュールのマクロ
って言っているんだから・・

A列のみのサンプル(標準モジュールの例

Sub Sample()
With Range("A2")
.End(xlDown).Offset(1, 0).Formula = _
"=SUM($A$2:" & .End(xlDown).Address & ")"
End With
End Sub

VBA使えるなら後は考えろ

86:名無しさん@そうだ選挙にいこう
09/06/12 21:37:51
INDIRECT関数を利用すると、範囲の片方は固定できます。
合計を求めるセルがB301として、当初の集計範囲がB2:B300だったとします。
B301セルの計算式を
=SUM(INDIRECT("$B$2:$B"&ROW()-1))
としておけば、2行目に行挿入しても””で囲んだ部分は変わりません。
集計範囲のもう片方は合計行の1行上と指定してるので行の挿入・削除に応じて変化します。
マクロとかややこしいものを使わずにすむのでこれがいいかと思う。

87:名無しさん@そうだ選挙にいこう
09/06/12 22:02:09
19です。ハイパーリンクは諦めました。
代わりに、BASP21とマクロでFTPサイトからフォルダ一覧とファイル一覧取得して目的のファイルダブルクリックでダウンロード出来るようになりました。
ありがとうございました。

88:名無しさん@そうだ選挙にいこう
09/06/12 22:02:42
独り言ならチラシの裏にでも書いておけよ

89:名無しさん@そうだ選挙にいこう
09/06/12 22:08:37
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000

前スレ805の続きです。前回とはシート名が変わっています。
Sheet("DATA")の月ごとのデータを、Sheet("FS")に1Q、2Q、3Q、4Qでまとめることは
出来ましたが、新たに月ごとのデータもまとめることになりました。
レスをくださった方のマクロを元に書いてみたものの、うまく集計してくれません。
どこが間違ってるのでしょうか?

---Sheet("DATA")--------------------------------------------------------------
  A   B  C   D   E  F  G  H   I   J  K    L    M  N   O   P  Q
商品名    4月  5月 6月    7月 8月 9月   10月 11月 12月    1月 2月 3月
A1        12  15  7      3   2  6
A1         3   5  2      4   9  11
A1        10  12  8     10  16  5
A2         3   0  5      1   3  0
A3         8   6  11      8   7  2
A3         0   3  7      0   1  1 


--Sheet("FS")------------------------------------------------------------------
  A  B  C  D  E  F  G  H    I   J   K  L   M    N    O    P  Q  R
商品名   1Q 2Q  3Q 4Q  4月 5月 6月 7月 8月 9月 10月 11月 12月 1月 2月 3月
A1      74  66
A2      8   4
A3      35  19

90:89
09/06/12 22:10:39
Sub まとめ3()
Dim i As Long, j As Long, k As Long
Dim Rng(3) As Range
Dim Rng1(3) As Range, Rng2(3) As Range, Rng3(3) As Range

 Worksheets("FS").Rows("2:65536").Delete Shift:=xlUp
 i = 3
 j = 2

 With Worksheets("DATA")
  Do While .Cells(i, 1).Value <> ""
   If .Cells(i, 1).Value <> .Cells(i - 1, 1).Value Then
    For k = 0 To 3
     Set Rng(k) = .Cells(i, 3).Resize(1, 3).Offset(0, k * 4)
     Set Rng1(k) = .Cells(i, k * 3 + 7)
     Set Rng2(k) = .Cells(i, k * 3 + 8)
     Set Rng3(k) = .Cells(i, k * 3 + 9)
    Next
   Else
    For k = 0 To 3
     Set Rng(k) = Union(Rng(k), .Cells(i, 3).Resize(1, 3).Offset(0, k * 4))
     Set Rng1(k) = Union(Rng1(k), .Cells(i, 3).Offset(0, k * 3 + 7))
     Set Rng2(k) = Union(Rng2(k), .Cells(i, 7).Offset(0, k * 3 + 8))
     Set Rng3(k) = Union(Rng3(k), .Cells(i, 11).Offset(0, k * 3 + 9))
    Next
   End If

91:89
09/06/12 22:11:33
   If .Cells(i, 1).Value <> .Cells(i + 1, 1).Value Then
    Worksheets("FS").Cells(j, 1).Value = .Cells(i, 1).Value
    For k = 0 To 3
     Worksheets("FS").Cells(j, k + 3).Value = WorksheetFunction.Sum(Rng(k))
     Worksheets("FS").Cells(j, k * 3 + 7).Value = WorksheetFunction.Sum(Rng1(k))
     Worksheets("FS").Cells(j, k * 3 + 8).Value = WorksheetFunction.Sum(Rng2(k))
     Worksheets("FS").Cells(j, k * 3 + 9).Value = WorksheetFunction.Sum(Rng3(k))
    Next

    j = j + 1
   End If
   i = i + 1
  Loop
 End With

 For k = 0 To 3
  Set Rng(k) = Nothing
 Next

 Worksheets("FS").Select
End Sub

92:名無しさん@そうだ選挙にいこう
09/06/12 22:15:59
>>67
2007持ってないんで2003以前の話なんだけど

(1)名前の定義をする
2003以前なら範囲を選択→挿入→名前→定義

(2)表示される[列2]を元にINDEX関数で引っ張ってくるとかかなあ?

93:名無しさん@そうだ選挙にいこう
09/06/12 22:24:11
もの凄く初歩的な質問と思われますがお願いいたします。

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 「エクセル 数 順」「エクセル 複製」

左側に縦1列で上から順に1から数字をうった表を作りたいのですが
必要な数だけ1から順に数字を入力する方法を教えてください。
行数が足りなくなった際の複製方法もお願いします。
検索をかけてみましたが何をキーワードにすれば良いかも分からない状態です。
よろしくお願い致します。

94:名無しさん@そうだ選挙にいこう
09/06/12 22:26:00
集計にVBAを使うのはバカだということで意見が一致しています

95:名無しさん@そうだ選挙にいこう
09/06/12 22:27:50
>>93 
2003なら編集−フィル−連続データの作成
さがせば2007にも同じような機能はあるだろう

96:名無しさん@そうだ選挙にいこう
09/06/12 22:50:15
>>93
"1"を入力したセルの右下でマウスカーソルが十字キーみたくなったら その状態
で右クリックを押しつつ必要な数のセルを選択。
右クリックから指を離すと右下に四角っぽい図形(オートフィルオプション)
がでてきますのでそこの▼をクリックし”連続データ”を選択する。

97:名無しさん@そうだ選挙にいこう
09/06/12 22:56:15
まあ A1+1を下にコピーすればいいんだけどね

98:96
09/06/12 22:57:48
>>95
会社:2007、俺:xpなんだけど2007って扱いづらいっす。
>>95指摘の編集−フィルって便利なの、もしかしたら無いんじゃないかとおもう。

一応前スレにも載ってた方法をコピペ&加筆させてもらいました。

99:名無しさん@そうだ選挙にいこう
09/06/12 22:59:09
10
2
5
8
9
4
3

など乱数が並んでる列に対し
5以上の数字の偏差(stdev)など使ってやりたいのですが
何か良い関数があれば教えて下さい。
実は数字じゃなくて時間でやりたいので応用が利くのがいいです。

100:名無しさん@そうだ選挙にいこう
09/06/12 23:04:41
>>99
C1に数値を入力
b1=a1>$c$1
下にオートフィルで偏差出すとか
ちなみに計算上TRUEは1、FALSEは0でしょ利される

101:96
09/06/12 23:14:18
ちょっと訂正
×:右クリック→○:左クリック

102:93
09/06/12 23:19:21
出来ました!皆さんどうもありがとうございました!!

103:名無しさん@そうだ選挙にいこう
09/06/12 23:48:55
>>92
回答ありがとうございます!試してみます。

104:名無しさん@そうだ選挙にいこう
09/06/13 00:25:56
>89
月毎の集計ならこういうオーソドックスなのはどうでしょうか?
四半期の小計は計算式にまかせているのと、FSシートのクリアは入れてません。
Option Explicit
Dim Sh_I As Excel.Worksheet, Sh_O As Excel.Worksheet
Dim Retu As Variant, Tate_I As Long, Tate_O As Long, i As Integer
Dim Syokei(12) As Long, W_DATA As String
Sub 集計()
  Call Init_proc
  Do While (W_DATA <> "")
    Tate_I = Tate_I + 1
    If W_DATA = Sh_I.Cells(Tate_I, 1).Value Then
      For i = 1 To 12
        Syokei(i) = Syokei(i) + Sh_I.Cells(Tate_I, Retu(i - 1)).Value
    Next i
    Else
      Sh_O.Cells(Tate_O, 1).Value = W_DATA
      For i = 1 To 12
        Sh_O.Cells(Tate_O, i + 6).Value = Syokei(i)
        Syokei(i) = Sh_I.Cells(Tate_I, Retu(i - 1)).Value
      Next i
      W_DATA = Sh_I.Cells(Tate_I, 1).Value
      Tate_O = Tate_O + 1
    End If
  Loop
  Set Sh_I = Nothing
  Set Sh_O = Nothing
End Sub
続く

105:104
09/06/13 00:29:52
続き
Private Sub Init_proc()
  Set Sh_I = Worksheets("DATA")
  Set Sh_O = Worksheets("FS")
  Retu = Array(3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 16, 17)
  Tate_I = 2
  Tate_O = 2
  W_DATA = Sh_I.Cells(Tate_I, 1).Value
  For i = 1 To 12
    Syokei(i) = Sh_I.Cells(Tate_I, Retu(i - 1)).Value
  Next i
End Sub
以上
当方、COBOLが長かったのと、UNION とかRESIZEとか初めて見たので、↑こういうやり方しかできません。
Retu = Array(3, 4, 5, 7, 8, 9, 11, 12, 13, 15, 16, 17)の行は、
DATAシートとFSシートの月の列の対応のためのもので、FSシートの方は+6するだけなので配列にしてません。
参考まで。

106:名無しさん@そうだ選挙にいこう
09/06/13 01:31:03
#VALUE! って参照不可能なんでしょうか?
例えば、

     A       B
1 マスクメロン  1000
2 夕張メロン   #VALUE!
3 XXX

とあって、セルXXXに=IF(B2="#VALUE!",B1,B2)みたいな#VALUE!を転用する
感じの式って打ち込めないんでしょうか?宜しくお願い致します。

107:名無しさん@そうだ選挙にいこう
09/06/13 01:32:38
>>106
=IF(ISERROR(B2),B1,B2)

108:名無しさん@そうだ選挙にいこう
09/06/13 01:48:52
>>107
^ー^)ノシ Thanks so much !!

109:名無しさん@そうだ選挙にいこう
09/06/13 03:28:30
>>89
集計方法が変わるたびにプログラミングか。ご苦労なことだ。
そんな簡単なことできたって誰もほめてくれないぞ。
集計なんかできて当たり前で、集計結果をもとにどんな意思決定をするかが大切なんだ。


110:名無しさん@そうだ選挙にいこう
09/06/13 05:12:35
>>89
DATAシートとFSシートでは構成が違うのだから、Cellsの引数を変える必要がある。
具体的には、

>Set Rng1(k) = .Cells(i, k * 3 + 7)
 ↓
Set Rng1(k) = .Cells(i, k * 4 + 3)

さらにその下のOffsetを使っている部分は全然ダメ
>Set Rng1(k) = Union(Rng1(k), .Cells(i, 3).Offset(0, k * 3 + 7))
 ↓
Rng1(k) = Union(Rng1(k), .Cells(i, k * 4 + 3))
もしくは
Rng1(k) = Union(Rng1(k), .Cells(i, 3).Offset(0, k * 4))

Rng2とRng3は、上の3という数字をを4と5にそれぞれ変えればいい。
これでうまくいくはず。

いろいろつっこみどころ満載だが、とりあえず配列とOffsetについてはググるなりしておいたほうがいい。

111:110
09/06/13 05:15:03
Setが抜けてた・・・

112:名無しさん@そうだ選挙にいこう
09/06/13 08:12:56
>>89
>>94がピボットテーブル使えと言ってるぞw
Excel2000なんでアイテム数が足りるかどうか分らんが。

113:名無しさん@そうだ選挙にいこう
09/06/13 08:15:07
>>109もピボット使えと言ってたか。

114:名無しさん@そうだ選挙にいこう
09/06/13 08:24:27
ついでにピボットテーブルのヒントだが、「複数のワークシート範囲」と「グループ化」で出来る。
4月〜6月を選択してグループ化、7月〜9月を選択してグループ化、以下同様。
4月を左端にもってくるには並び替えのユーザー設定リストを作ればいい。


115:110
09/06/13 09:52:30
>>89は前スレでピボットは無しという条件を付けている
何故かはわからないがな・・・

116:名無しさん@そうだ選挙にいこう
09/06/13 09:58:20
>>115
何故かは簡単だ。
頭悪いんだよ。

117:名無しさん@そうだ選挙にいこう
09/06/13 12:37:19
>>116
ピボットに頭はいらないじゃん。
頭の悪い人ほどピボットを覚える必要がある。

118:名無しさん@そうだ選挙にいこう
09/06/13 12:40:12
>>117
ピボットぐらいはまず全員が使えるようになるべき
知名度が異常に低いの何とかして欲しい

119:名無しさん@そうだ選挙にいこう
09/06/13 13:15:20
Excelは何でもありだから逆にややこしくなる。
ピボットテーブル専用ソフトみたいなのがあるといいんだけどな。
並べ替えとフィルタとVLOOKUPあたりも使えた方がいいか。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5131日前に更新/69 KB
担当:undef