ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Excel(エクセル)活用コミュの数式に該当するセル(行)の削除

  • mixiチェック
  • このエントリーをはてなブックマークに追加
こんにちは。いつもお世話になっています。
お手上げ状態なので トピックさせて頂きます。

A:U列、10000以内の段に
作業者26人分の5分単位の 作業時間・詳細が 記入されている
リストがあります。(6ヶ月分くらい)

右に 集計表があり、各 製番の工程別の集計時間を出しています。

【y:月毎に業務から くる製番。(毎月貼り付けて集計)
ac:=SUM(IF(($N$2:$N$10001=$Y$4)*($Q$2:$Q$10001="シリコン")*(($S$2:$S$10001="初期外観")+($S$2:$S$10001="初期手直し")),$G$2:$G$10001,0))
ad:=SUM(IF(($N$2:$N$10001=$Y$4)*($Q$2:$Q$10001="シリコン")*(($S$2:$S$10001="戻り検査")+($S$2:$S$10001="戻り手直し")),$G$2:$G$10001,0))
ae:=SUM(IF(($N$2:$N$10001=$Y$4)*($Q$2:$Q$10001="シリコン")*(($S$2:$S$10001="定常品電気試験全般、最終外観・研磨作業")+($S$2:$S$10001="定常品電気試験全般")+($S$2:$S$10001="外観構造、定常品電気試験全般")+($S$2:$S$10001="修理")+($S$2:$S$10001="その他")),$G$2:$G$10001,0))
af:=SUM(IF(($N$2:$N$10001=$Y$4)*($Q$2:$Q$10001="シリコン")*(($S$2:$S$10001="X線フィルム判定")+($S$2:$S$10001="X線撮影")+($S$2:$S$10001="X線撮影、X線フィルム判定")),$G$2:$G$10001,0))
ag:=SUM(IF(($N$2:$N$10001=$Y$4)*($Q$2:$Q$10001="シリコン")*($S$2:$S$10001="最終外観・研磨作業"),$G$2:$G$10001,0))
※全て配列数式です

に集計する数式がはいっており、 1製番の各工程別の作業時間を出しています。
この製番が毎月 50〜200くらいです】



ここからが本題です。
この集計表の数式に該当する 列(A:Uのみ)を削除したいのですが、
これは マクロで 処理できるものなのでしょうか?
(★未集計リストを作成できたらいいと思っています。
※処理月以前の集計と ダブってしまうものがあり、
以前の集計表からも 同じものを検索して差し引く。という処理を行っていますが、
これが可能なら その処理がいらなくなる。訳です)

※数式に該当する列を削除する、マクロ、集計後列の削除、VBA、行の削除
等いろいろな単語で ネット検索したものの 
似たような例も みつけられず・・・
マクロやVBA等の サイトもみてみたのですが わからず・・・。
まず、出きるのか?もわからない状況です。


※マクロは 初心者です。

可能か否か、アドバイス等頂けたら幸いです。


★エクセル2003 


※説明解りづらかったら すみません。。。。





コメント(10)

>この集計表の数式に該当する 列(A:Uのみ)を削除したいのですが、

1)数式のある列を削除したいのか、
2)単にA:Uの列を削除したいのか?

2)なら単純です。
Sub Macro1()
'
' Macro1 Macro
'
Columns("A:U").Select
Selection.Delete Shift:=xlToLeft

End Sub

1)の場合
関数の入っているセル値の列番号を変数に格納し、
上記の"A:U"の代わりに、いれるコードが必要だと思います。




単純に数式の書いてあるセルを削除(クリア)したいのだったら

ジャンプを利用するのが簡単だと思いますが。
みなさま コメントありがとう御座います。

わたしの説明が下手ですね。。。

数式に該当する A:Uの列とは 、
例えば

AC4:=SUM(IF(($N$2:$N$10001=$Y$4)*($Q$2:$Q$10001="シリコン")*(($S$2:$S$10001="初期外観")+($S$2:$S$10001="初期手直し")),$G$2:$G$10001,0))

の数式の答えは A:Uの 作業時間のリスト、の中から
条件に該当する G列にある作業時間の合計です。
この作業時間が
G列に 3個あるとして、 120、150、30 だとしたら 数式の答えは 
300ですが、 そのあと、マクロで
この答えがある列A:Uを 削除してしまいたい。。。
(もしくは この答えの数字のみ・・・120、150、30を消したい)
が 希望です。。。

※A:Uに 数式等は 一切はいっていません。
EXCELに自動でやってもらうにしても、人間が正確に命令しないと、動きません。
説明以前に、何をしたいのか、頭の中で整理しましょう。
そして、手動で2,3やってみましょう。

「数式で計算されたセルを消したい」と理解しましたが、
そのセルを消すとまた数式の結果が変わります。

変わって良いものなのか、変わって欲しくないのか…

このファイルは 計算用として使用しており、
一度計算された表は 別のファイルに移動して使用する為
計算した後は、
該当の数字のみが消える事で 答えが0になるのが理想です。

数式を 応用して けせんるんじゃないか?と安易
な考えを持っていましたが 
もう一度 よく考えて見ます。

理想の動きを手動で処理するとしたら
私の知識の範囲では フィルタ検索をした結果を消す。
という動きなのですが、
毎月変化する製番があるとしたら ・・・。


かなり 混乱中の為 考えまとまり次第
また コメントします。


セルを消した後の作業は?
消したセルに次は何が入る?

A〜U列に、次のデータをまとめて上書きとは違う操作?
セルを消せた後は残ったA:Uはそのまま次の月の
集計作業に使用します。

A:Uの一番下には 更に新たなリストを付け加えていく。
という作業があります。

ずーっと集計されないものが 残っていけば。。。

という訳なのですが。。。
作業が複雑なのか、説明が難しいのか不明ですが…

今現在、この作業はどうしているのでしょうか?

残ったセルはいつ計算に使われるのでしょうか?
この辺りが作業の複雑さと関係しているようです。
残ったセルが以降で計算に使われるとは考え難いからです。
新たに数式が追加され、使用されるのでしょうか?
難しい事ではないと思うでんすけど、
言葉にすると なかなか伝わらないですネ。。。


このファイルは ただの計算用です。
作業者の作業時間の詳細なリストが出来上がったら A:U※一番下。
に貼り付けていく。
6ヶ月以前の分は その時点で
削除します。
(大体6ヶ月分位を目安に入れています。)
※この削除の処理で 左の数式の範囲が小さくなってしまうので
置換で直します

A:Uの列は 毎月 触るのはそのくらいです。

このリストの左に 計算(集計)表があり、 上記の数式が
(200段くらい)入っています。
Yの部分に 毎月業務からくる 製番を貼り付けると
数式が働き、時間の集計を始めます。
出来上がった集計表の値は
別のファイルに貼り付け次の処理に進む為、 
計算ファイルのYの値は消し、 このファイルの作業は終わります。
この作業を毎月繰返し行っています。

まず、なぜここで A:Uの計算に該当するセルを消したいかというと、
6ヶ月の中で 業務からくる製番が 同じ時があります。
(これは工程別で処理している為
途中で検収をする。等ある為)
その場合、 1月に計算表で出た 作業時間は 3月にも計算され、
だぶってしまう為。

★現在は これを別のファイルで 前月以前の検収リストから 同じ処理の作業時間を
だし、 差引した作業時間を検収で上げています。



画像添付してみました。 

画像は見えませんが、言わんとすることが、なんとなく判りました。

0>この集計表の数式に該当する 列(A:Uのみ)を削除したいのですが、

と言っていますが、見づらい画像を見る限り、「該当行」の削除ですね?


エスパー回答します。(違っていたら、あしからず…)

V列を作業列として、

V2=IF(($N2=$Y$4)*($Q2="シリコン")),"削除","")
以降、下にオートフィル

V列で「削除」となった行を削除(マクロ処理するなりしてください。)

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Excel(エクセル)活用 更新情報

Excel(エクセル)活用のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。