Excel総合相談所 69 ..
[2ch|▼Menu]
2:名無しさん@そうだ選挙にいこう
08/05/24 13:59:33
▼━質問時の注意・決まり事━━━━━━━━━━
・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:名無しさん@そうだ選挙にいこう
08/05/24 13:59:57
★ルールを無視すると…
 >>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:名無しさん@そうだ選挙にいこう
08/05/24 14:00:20
★ 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:名無しさん@そうだ選挙にいこう
08/05/24 14:00:46
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

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

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

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

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

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

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

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

7:名無しさん@そうだ選挙にいこう
08/05/24 14:01:38
   ________________________________
   ||
   || ━ 質問のしかた ━
   ||
   || ★1 質問するときは、環境や条件をキチンと書くこと。情報後出しはダメ。
   || ★2 要望は具体例や図を使って明確かつ具体的にしる。
   || ★3 質問前に>>2-20あたりの注意書きやQ&Aを必ず読むこと。
   || ★4 質問テンプレ(雛形)は必須ではないが、
   ||    OSやExcelのバージョン、VBAの可否などは必須情報。
   ||
   ||            ∧ ∧   。
   ||          ( ,,゚Д゚)/ ジュウヨウ!!      E[]ヨ
    ̄ ̄ ̄ ̄ ̄ ̄ ̄ノ  つ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
                /  ̄ ̄ ̄ ./| ________________
                | ̄ ̄ ̄ ̄| | |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|____|/|
                        ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      \    は〜〜〜〜い      /
    ∧ ∧    ∧,,∧   ∧ ∧
    ( ,, ∧▲  ミ  ∧ ∧ (  ∧ ∧
  〜(_(  ∧ ∧_( ∧ ∧_ミ・д・∧ ∧
    @(_(,,・∀・)@ (   *)〜ミ_ (   ,,)
      @(___ノ 〜(___ノ    〜(___ノ

8:名無しさん@そうだ選挙にいこう
08/05/24 14:02:02
エクセルの技術的な質問と関係ない議論・雑談は下記スレッドで。

【質問不可】Excel総合相談所スレの雑談・議論スレ2
スレリンク(bsoft板)

9:名無しさん@そうだ選挙にいこう
08/05/24 14:22:32


10:名無しさん@そうだ選挙にいこう
08/05/24 14:24:25
先生にここのログを見せたらどんな顔するだろうな
そもそもRIGHT(A2,2)がダメっって完全に後出し条件じゃん。質問スレでは門前払いされるレベルだぞ

11:名無しさん@そうだ選挙にいこう
08/05/24 14:28:00
後だしじゃないじゃん?

909 名前:名無しさん@そうだ選挙にいこう [] 投稿日:2008/05/23(金) 20:16:39
すみませんどなたかこの関数問題を教えて下さい。
問題としては守備位置の名前を表示させず名字の名前だけ 右のセルに表示させる問題です。※ライト関数で右2文字だけ表示させるのはダメです。

こんな板で吊られた?

12:名無しさん@そうだ選挙にいこう
08/05/24 14:31:08
>>11
943 :名無しさん@そうだ選挙にいこう :2008/05/24(土) 01:50:14
自分は>>909です。
皆さん、多数決の回答ありがとうございます。
正直な所、習った事がない問題で四苦八苦してました。
最初は、名前が皆二文字の為右二文字を表示されば良いと思いライト関数を使ってほらよ。解いたぞ〜 と思ったらそんな単純なもんじゃないと一喝され
『名字は一文字の人も居れば三文字の人も居る』と言われてしまいました。
後日、教室にこのカンニングに等しい回答を手にとり出撃します。

13:名無しさん@そうだ選挙にいこう
08/05/24 14:32:27
前スレで終わったんじゃないのか?引きずるなよ

14:前スレ990
08/05/24 14:33:32
前スレ994
ありがとうございました。やっぱりその方法しかないんですね。
最終行あたりを使って、保存時・終了時に削除するようにします。

前スレと元カレって似てますね

15:名無しさん@そうだ選挙にいこう
08/05/24 14:34:39
>>13
終わったかどうかはお前が判断することではない。

16:名無しさん@そうだ選挙にいこう
08/05/24 14:48:33
じゃ、俺が判断する。

終了。

17:前スレ942
08/05/24 14:52:47

前スレ992
分かりませんか・・・。
VBAとかマクロとかならできるか調べてみます。
検証ありがとうございました。


18:名無しさん@そうだ選挙にいこう
08/05/24 15:14:07
>17
HYPERLINKが入ってると否応なしにリンクされるっぽいから、
INDIRECTとかでばらして強引にやれば関数でもいけるんじゃない?

19:前スレ
08/05/24 15:36:32
>18
IF関数の書き方が間違っていると思ってました。
ばらして・・・。なるほど!!もう少し関数でがんばってみます。


20:名無しさん@そうだ選挙にいこう
08/05/24 15:44:22
=SUM(HYPERLINK(B2),A1)
でもリンクされるな。この関数が入ってればリンクされる・・ということかも

21:前スレ942
08/05/24 16:04:23
>20
どこに入れてもHYPERLINKされるんですね
何度も何度もIF書き換えてました(泣)


22:名無しさん@そうだ選挙にいこう
08/05/24 16:57:17
こんな・・・
=IF(A1=1,HYPERLINK("URLリンク(localhost)","はいぱー"),HYPERLINK("","なし"))


23:前スレ942
08/05/24 18:41:36
>22
おぉー!!
無理やりリンクをはずせばよかったんですね。思いつきませんでした。
「なし」でもカーソルを持っていくと、人差し指をさした形になりますが実用上問題なしです。
ありがとうございました。

アドバイスくれたみなさん
ありがとうございました。とても助かりましたm(_ _)m





24:名無しさん@そうだ選挙にいこう
08/05/24 20:27:00
よし、じゃ約束のチューをさせてもらうぞ。
その後ものの弾みで最後までやってしまっても事故だからな。

25:名無しさん@そうだ選挙にいこう
08/05/24 20:43:11
や、やさしくしてくりゃれ…

26:質問です
08/05/24 22:27:45
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel98
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】

質問です。

たとえば、1列目と3列目のそれぞれの番号がふられていて
2列目と4列目にはそれぞれの番号に対する金額がが書かれているとします。

1列目 2列目 3列目 4列目
001 20円 002 23円
002 11円 003 30円
004 20円 005 30円

こんな感じです。これを、

001 20円 −−− −−−
002 11円 002 23円
ーーー −−− 003 30円
004 20円 −−− −−−
ーーー −−− 005 30円

このような感じで同じ番号同士のものを同じ行にくるようにしたいのですが
どのようにすればいいのでしょうか?
よろしくお願いします。

27:名無しさん@そうだ選挙にいこう
08/05/24 22:33:09
挿入

28:名無しさん@そうだ選挙にいこう
08/05/24 22:34:05
>26
やりたいことにあうかどうかはわからんけど、
3・4列目を1・2列目に貼り付けてしまって、
1列目で並び替え、もしくはピボットとかで集計すればどう?

29:名無しさん@そうだ選挙にいこう
08/05/24 22:34:39
別の個所にVlookupで引っ張ってきて、
#N/Aを置換で---に置き換える

30:名無しさん@そうだ選挙にいこう
08/05/24 22:39:39
>>26
データを不規則に移動させるのはVBA使わないと難しいんじゃないかなあ

31:質問です
08/05/24 22:44:04
すいませんーーーは空白の意味です。>>28さん>>29さんありがとうございます。
ためしてみます


32:名無しさん@そうだ選挙にいこう
08/05/24 22:47:40
>>26
こんなデータを用意する。
001 20 002 23
002 11 003 30
004 20 005 30
001 001
002 002
003 003
004 004
005 005
006 006
007 007
008 008
009 009
010 010

フィルタ機能を使って1列目から重複データを取り除き、それを別シートにコピペ。
フィルタ機能を使って3列目から重複データを取り除き、それを別シートにコピペ。
するとこんなデータができる。

001 20 002 23
002 11 003 30
004 20 005 30
003 001
005 004
006 006
007 007
008 008
009 009
010 010


33:名無しさん@そうだ選挙にいこう
08/05/24 22:49:48
>32
できてない・・・・!

34:32
08/05/24 22:50:45
見にくいのでもう一度
>>26
こんなデータを用意する。
001 20 002 23
002 11 003 30
004 20 005 30
001   001
002   002
003   003
004   004
005   005
006   006
007   007
008   008
009   009
010   010

フィルタ機能を使って1列目から重複データを取り除き、それを別シートにコピペ。
フィルタ機能を使って3列目から重複データを取り除き、それを別シートにコピペ。
するとこんなデータができる。

001 20 002 23
002 11 003 30
004 20 005 30
003   001
005   004
006   006
007   007
008   008
009   009
010   010


35:32
08/05/24 22:52:26
つづき
1列目と2列目を選択して1列目で昇順にソート。
3列目と4列目を選択して3列目で昇順にソート。
できあがり。


36:名無しさん@そうだ選挙にいこう
08/05/24 22:54:57
>>33
あわてものだのう。

37:名無しさん@そうだ選挙にいこう
08/05/24 22:58:00
まずは1列目と3列目のデータをどこか別の一列に集めてソート、重複行を削除。
これを作業列として、LOOKUPで対応する値段をあてはめてく。

38:名無しさん@そうだ選挙にいこう
08/05/24 22:59:51
>35-36
でも結局できてないじゃない・・・!
003とか残るし、手動で消さなきゃいけないじゃない・・・・。
ていうか普通に>>28でよかったんでしょ?

39:32
08/05/24 23:01:51
もっと効率のいい方法もある。
こういうデータに変更する。
番号 金額 列
001 20 1
002 11 1
004 20 1
002 23 3
003 30 3
005 30 3

そしてピボットテーブル
番号 1 3
001 20
002 11 23
003   30
004 20  
005   30
完成

40:32
08/05/24 23:07:12
>>38
>>28だとできてないでしょ。

41:名無しさん@そうだ選挙にいこう
08/05/24 23:16:38
>>26
まずA列とC列から作業列を作る。合わせてソートして重複を除いた物をE列に入れる。
次にG1に =IF(ISERROR(VLOOKUP($E1,A$1:B$3,2,0)),"",VLOOKUP($E1,A$1:B$3,2,0)) と入れて
G列とH列にコピペ。
さらにF1に =IF(G1="","",$E1) と入れてF列とH列にコピペ

URLリンク(paint.s13.dxbeat.com)

42:41
08/05/24 23:19:28
タイプミス
× G列とH列にコピペ。
○ G列とI列にコピペ。

43:名無しさん@そうだ選挙にいこう
08/05/24 23:31:31
>>41
出力はこれが一番質問者の希望通りだな。
私の好みは>>39

44:名無しさん@そうだ選挙にいこう
08/05/24 23:59:50
【1 OSの種類         .】 Windows xp home
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】否
【5 検索キーワード     】 エクセル 重複 合計
URLリンク(www-2ch.net:8080)
図の左の表を右の様に加工したいです。具体的には

1.月ごとに分ける
2.1つのユーザーに対して複数の作業先がある場合は、それぞれの1番早い日付に
 他の日付の作業数を合計を入れる
 (月が違う場合はまとめない)

3000行程度あり、手作業ではちょっと面倒なので効率的に出来るよう、知恵を貸してください。
お願いします。

45:名無しさん@そうだ選挙にいこう
08/05/25 00:06:26
>>44
ピボットテーブル

46:名無しさん@そうだ選挙にいこう
08/05/25 00:08:49
>>44
基本的にはピボットテーブルでできますが、その前にデータを
「作業」と「作業明細」に分ける必要があります。

>2.1つのユーザーに対して複数の作業先がある場合は、それぞれの1番早い日付に
> 他の日付の作業数を合計を入れる

これ間違ってるでしょ?

47:44
08/05/25 00:32:03
>45,46
やっぱりそれなんですね…。
使った事ないのでまだよく分かってません。
ピボットテーブルでどのようにやればいいかも出来れば教えて頂けるとありがたいです。
とりあえず調べてみます。

あと間違いとはどういうことでしょうか?





48:名無しさん@そうだ選挙にいこう
08/05/25 00:34:06
ABCの列があったとすると
AとCだけコピペしたい場合はいちいち
AとCをひとつづつコピペするしかないのでしょうか?

49:46
08/05/25 00:37:57
>>47
>2.1つのユーザーに対して複数の作業先がある場合は、それぞれの1番早い日付に
> 他の日付の作業数を合計を入れる

2.1つのユーザーに対して同じ作業先がある場合は、それぞれの1番早い日付に
 他の日付の作業数を合計を入れる

じゃないの?

50:名無しさん@そうだ選挙にいこう
08/05/25 00:44:27
>>48
ctrl押しながらクリックしていけば離れてる範囲を選択できる

51:46
08/05/25 00:45:35
>49
あ、読み返すとおかしいですね。

1つのユーザーに対して同じ作業先がある場合は、
1番早い日付の作業数に、他の日付の作業数の合計を加える。
さらに作業先が複数ある場合は、それぞれの1番早い日付の作業数に、
他の日付の作業数の合計を加える。

かな。分かりにくくてすみませんでした。



52:46
08/05/25 00:50:50
もうひとつ間違い。
あなたの名前は>>44でしょ。

データをこのように整理してみました。
作業番号 ユーザー 受注数 作業先 作業数 日付 開始日付
1 A 50000 X 7000 4月1日 4月1日
1 A 50000 X 7000 4月2日 4月1日
1 A 50000 X 7000 4月3日 4月1日
2 A 50000 Y 7000 4月3日 4月3日
3 A 50000 Z 4000 4月4日 4月4日
4 A 50000 X 7000 5月1日 5月1日
5 A 50000 Y 7000 5月1日 5月1日
6 A 50000 Z 4000 5月1日 5月1日
7 B 30000 X 15000 4月1日 4月1日
7 B 30000 X 10000 4月2日 4月1日
8 B 30000 X 5000 5月1日 5月1日


53:44
08/05/25 01:11:08
>52
その1列目は、1番上に1を入れてそれ以降は
=IF(AND(B3=B2,D3=D2,MONTH(F3)=MONTH(F2)),A2,A2+1)
こんな感じでしょうか?
そしてその後、開始日付はどうなってるのか分かりません。


54:名無しさん@そうだ選挙にいこう
08/05/25 01:16:56
>>47
まずF列に「月」を作る。1行目に月と入れて、2行目に=MONTH(E2)
次にピボットテーブルを置きたい場所の左上のセルをクリックしてから
メニューからデータ→「ピボットテーブルとピボットグラフ レポート」→「次へ」
範囲を入れるダイアログが出たら元データの入った表全体をドラッグ→完了

すると、青い罫線で囲まれたピボットテーブルと、「ピボットテーブルのフィールドリスト」ってのが出てくるから
まずフィールドリストから月をドラッグ。(月にマウスポインタを合わせ、左ボタンを押す。押したままマウスを動かして
薄いグレーで「ここに行のアイテムをドラッグします」と書かれた枠の中までポインタを動かして左ボタンを離す)
続けてユーザー、作業先を同じ場所にドラッグ。

次に作業数を「ここにデータアイテムをドラッグします」のところへドラッグ。

ピボットテーブルの見出しの「月」の部分を右クリック、フィールドの設定、
出てきた「ピボットテーブルフィールド」ダイアログのラジオボタンの「なし」を選択、OK。
「ユーザー」「作業先」の合計も同様に消す。

データ領域の見出しの「集計」を右クリック、オプション、「列の総計」のチェックを外してOK。

ここまでやったのが以下のようなテーブル。
URLリンク(downloads.myphotos.cc:8080)

同じように受注数の合計も出して、日付はVLOOKUPで入れるしかないと思う。

55:46
08/05/25 01:19:40
>>53
いえ、考え方を逆にしてみてください。
ユーザー,受注数,作業先,開始日付が作業番号に従属しているのです。
つまり,作業番号が決まれば、その行のユーザー,受注数,作業先,開始日付も決まります。


56:名無しさん@そうだ選挙にいこう
08/05/25 01:19:44
ピボットテーブルは、操作方法を文章で書くとめちゃくちゃ長くなるけど、
実際は30秒もかからずに集計表が完成するから
ちゃんと覚えておくと色々と役に立つよ。

57:46
08/05/25 01:27:59
>>52で示したデータをピボットテーブルで集計すれば目的の表ができあがります。
ここではもう一歩進んで、どうやったら>>52のようなデータを管理することができるか
考えて見ましょう。

>>52のデータでは作業番号が決まれば、その行のユーザー,受注数,作業先,開始日付が決まります。
そこでデータを「作業」と「作業明細」に分離します。


58:46
08/05/25 01:31:12
こうなります。

作業
作業番号 ユーザー 受注数 作業先 開始日付
1 A 50000 X 4月1日
2 A 50000 Y 4月3日
3 A 50000 X 4月4日
4 A 50000 X 5月1日
5 A 50000 Y 5月1日
6 A 50000 Z 5月1日
7 B 30000 X 4月1日
8 B 30000 X 5月1日


作業明細
作業番号 作業数 日付
1 7000 4月1日
1 7000 4月2日
1 7000 4月3日
2 7000 4月3日
3 4000 4月4日
4 7000 5月1日
5 7000 5月1日
6 4000 5月1日
7 15000 4月1日
7 10000 4月2日
8 5000 5月1日


59:44
08/05/25 01:46:17
URLリンク(www-2ch.net:8080)
一応やってみたこの方法を添削して頂きたいです。

・A列
A2に1、A3以降は
=IF(AND(C3=C2,E3=E2,MONTH(H3)=MONTH(H2)),A2,A2+1)
・B列
B2に
=IF(A2=A1,B1+1,1)
・G列
=SUMIF($A$2:$A$12,A2,$F$2:$F$12)
・I列
=IF(B2=1,H2,"")
・J列
=MONTH(I2)

眠くなてキター

60:44
08/05/25 01:49:15
うわリロード忘れてました!
また明日暇なんで参考にして試させて頂きます。
親切にレスくれた方々ありがとうございました。


61:名無しさん@そうだ選挙にいこう
08/05/25 01:50:05
おまいら難しく考えすぎ。これでいいじゃん。
J2=IF($A3&$C3&MONTH($E3)=$A2&$C2&MONTH($E2),B2+J3,B2)
L2=IF($A3&$C3&MONTH($E3)=$A2&$C2&MONTH($E2),D2+L3,D2)
N2=MONTH(E2)
O2=IF(I1&K1&N1<>I2&K2&N2,"○","")

で、フラグが○の行だけオートフィルタ
URLリンク(x072.s10.x-beat.com)

62:名無しさん@そうだ選挙にいこう
08/05/25 02:04:03
>>59
それならもっと簡単にできる
URLリンク(i-get.jp)

G2=MONTH(E2)
H2=IF(J3,B2+H3,B2)
I2=IF(J3,D2+I3,D2)
J2=A2&C2&G2=A1&C1&G1

最後に作業列がFALSEのところだけオートフィルタ

63:46
08/05/25 02:04:58
>>59
>>55でも説明しましたが、A列(作業番号)をユーザーや受注数のような他の項目から導いてはいけません。
考え方が逆です。作業番号を与えれば、ユーザーや受注数が決まるのです。

64:46
08/05/25 02:12:36
>>59
この表は上段が作業明細データ、下段が作業データになっていますね。
作業番号に従属する項目は>>55で説明したように
ユーザー,受注数,作業先,開始日付です。

ですから、作業データ(下段の表)には作業数と日付の項目は不要です。


65:名無しさん@そうだ選挙にいこう
08/05/25 02:43:28
>>61>>62は不正解。
それじゃだめなんだよ。
日付が月をまたぐような場合うまくいかないだろ?


66:名無しさん@そうだ選挙にいこう
08/05/25 02:59:45
>>65
月ごとに分けて集計すんのに、月をまたぐとだめってどういうこと?

>>62の画像が削除されたんで別んとこに再掲
URLリンク(bull.s11.x-beat.com)

67:名無しさん@そうだ選挙にいこう
08/05/25 03:14:07
>>66
おっと月ごとに分けるんだったね。
不正解とか言って失礼。ごめん。

68:名無しさん@そうだ選挙にいこう
08/05/25 09:34:01
>>50
貼り付け時にもABCのBを飛ばして
はりつけしたいのですが

69:名無しさん@そうだ選挙にいこう
08/05/25 09:58:42
>>68
ctrl押しながら(列を)クリックしていけば離れてる範囲を選択できる


70:名無しさん@そうだ選挙にいこう
08/05/25 10:18:30
>>69
コピーしようとしたら
そのコマンドは複数の選択範囲には使用できません
ってでるのですが・・・

71:名無しさん@そうだ選挙にいこう
08/05/25 10:21:59
>>70
列ならできる。

複数のセルを指定してるとか言わないよね?>>48

72:名無しさん@そうだ選挙にいこう
08/05/25 10:24:11
>>71
列ではなくセルです、すいません

でも、列でもコピペはできてもはりつけができないのですが

73:名無しさん@そうだ選挙にいこう
08/05/25 10:26:02
何度もすいません
ようするにやりたいのは複数の離れ離れのセルを一度で
コピペできないかということです。もちろんセルの貼り付け位置も
間隔はそのままではなればなれのまます

74:名無しさん@そうだ選挙にいこう
08/05/25 10:28:46
>>72
コピペとはコピー&ペーストの略。
日本語に訳すと複写と貼り付け。
だからコピペはできても貼り付けできないなんてことはありえないですよ。


75:名無しさん@そうだ選挙にいこう
08/05/25 10:29:44
>>73
できないということなんじゃないかな。
マクロでやれば?

76:名無しさん@そうだ選挙にいこう
08/05/25 11:02:04
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002 SP3
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 「Excel 行 番号」

<通常> オートフィルを使った場合
1 りんご
2 りんご
3 みかん
4 みかん
5 ばなな
6 ばなな

<希望> 同じデータは同じ連番(昇順)にしたい
1 りんご
1 りんご
2 みかん
2 みかん
3 ばなな 
3 ばなな

この<希望>のようにするにはどうしたらいいでしょうか?
宜しくお願いします。

77:名無しさん@そうだ選挙にいこう
08/05/25 11:13:38
1列目に連番、2列目に商品が並べ替えられて入力されているとして、
A1に「1」
A2に、=IF(B1=B2,A1,A1+1)
で、A2を選択してセルの右下の黒いとこダブルクリックでフィルすればおkじゃね?
できあがったら値のみコピーして貼り付け

78:76
08/05/25 11:32:58
>>77
な、なるほど。IF関数だけで、そんなに簡単にできてしまうんですね。
勉強になりました。
ありがとうございます!

79:名無しさん@そうだ選挙にいこう
08/05/25 11:46:51
excelで簡単にカード型データベースがつくれるようなキットないですか
入力・編集フォームのレイアウトが自由に作れて、レコードの追加・更新・削除ができるやつ。
vectorにいくつかあるようですが、項目数に制限があるのでいやです。

80:名無しさん@そうだ選挙にいこう
08/05/25 12:09:05
>79

そんなのをEXCELで始めようとするから後で手が付けられなくなる。
知識がないならACCESSでも使え。
知識があるならそんな簡単なものくらい自作しろ。

81:名無しさん@そうだ選挙にいこう
08/05/25 12:26:45
ACCESSなり使えればいいんだけど、職場ではwordとexcelしか使わせてくれない。
なければ自分で汎用的につかえるものつくるしかないけど、あるなら使おうと思った。

82:名無しさん@そうだ選挙にいこう
08/05/25 12:31:30
知識があるなら作るほうが早いな

83:名無しさん@そうだ選挙にいこう
08/05/25 13:20:32
Access使わせてもらえるようにするのが一番いいんじゃないか。

84:名無しさん@そうだ選挙にいこう
08/05/25 13:26:39
>>79
なぜ入力フォームが必要なのかをつきつめて考えてみたら?
入力フォームのどんな機能が使いたいのか。
案外不要なんじゃないか?

85:名無しさん@そうだ選挙にいこう
08/05/25 13:36:57
アクセスで入力フォームが果たしている決定的な仕事は
非正規化されたテーブルへのデータ入力じゃないかなあ。

売上テーブルに得意先名や売上単価を冗長に記録するよう
な非正規化された設計がされている場合なんかに、得意先
コードや商品コードから得意先マスターや単価マスターを
参照して値をコピーするような。

これ以外に入力フォームの存在価値がわからない。
>>79もこんなことしたいの?

86:名無しさん@そうだ選挙にいこう
08/05/25 13:40:11
>>73-75
離れたままのペーストは残念ながらCtrl+Vではできない。
値だけなら参照式を入れてCtrl+Enterでコピーできるが、内容(式や書式)はマクロを使わないと無理。

87:名無しさん@そうだ選挙にいこう
08/05/25 14:34:17
>>46いつものピボット厨うぜー、一度で説明すれや!

>>79
ユーザーフォームでググって自分で作れ。

88:名無しさん@そうだ選挙にいこう
08/05/25 14:43:39
>>87
>>46の説明が理解できないような人に回答者づらしてほしくないよ。

89:名無しさん@そうだ選挙にいこう
08/05/25 15:09:07
>>88
てめーは日本語も読めないのか?www
内容に文句を言ってるんじゃねえよ。
いくつのレスしてんだよ?説明がへたくそなんだよ、ボケ!

90:名無しさん@そうだ選挙にいこう
08/05/25 15:35:48
確かに。

91:名無しさん@そうだ選挙にいこう
08/05/25 16:18:19
こういつ奴が、質問の仕方が悪いと本気で思ってるから救いがない

92:名無しさん@そうだ選挙にいこう
08/05/25 16:20:33
構ってほしいだけなんだから相手しない

93:名無しさん@そうだ選挙にいこう
08/05/25 16:57:20
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

HYPERLINKについて質問
他のエクセルファイルのシートまで指定して開くリンクのシート名を他のセルから読み込みたいのですが可能でしょうか?

94:名無しさん@そうだ選挙にいこう
08/05/25 17:13:34
>>93
よくわからん・・とりあえずシート名を出すならこれ

URLリンク(www.relief.jp)
▼操作手順:セルにワークシート名を表示させる
ワークシート名を表示させたいセルに、
「=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1)))」

一度どこかに保存しないと機能しないので注意

95:名無しさん@そうだ選挙にいこう
08/05/25 17:38:55
>>93
セルを右クリック→ハイパーリンクを選んだ時と、HYPERLINK関数を使った場合とで方法が違うんで、
まずどっちか書いて。

96:名無しさん@そうだ選挙にいこう
08/05/25 17:50:30
>>95
HYPERLINK関数を使うつもりです


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

5331日前に更新/37 KB
担当:undef