

| [HOME] | [MAIL] |
| CEL411.重複のものを抜き出したい | 質問者:愛知県etukosanさん |
何行目にあるのか。抜き出せる関数でもあったら教えてください。 「データ」メニュー→「フィルター」は抽出する条件を入力しますが 条件を入力せずにただ重複しているものを抜き出せる方法。 ????????????????????????????????????????????? A: etukosanさん、こんにちは。 何行目にあるのか、とありますが表の先頭行から数えるのか、行番号を求めるの かで違ってきますが、例えばA列の2行目から10行目までにデータがあるとして、 どこか隣、仮にB列に作業列を作って、表の先頭行から数える場合は、B2に、 =IF(A2="","",IF(COUNTIF(A$2:A2,A2)>1,ROW(A1),"")) 行番号を求める場合は、B2に =IF(A2="","",IF(COUNTIF(A$2:A2,A2)>1,ROW(),"")) としてB10までコピーすると、重複行に番号が振られます。 次に、抽出先のセルに =IF(COUNT($B$2:$B$10)<ROW(A1),"", INDEX(A$2:A$10,MATCH(SMALL($B$2:$B$10,ROW(A1)),$B$2:$B$10,0))) と入力して、右に1つ、下に必要分コピーすると、重複データが抽出され、 その隣に何行目かが表示されます。 なお、B2に =IF(A2="","",IF(COUNTIF(A$2:A2,A2)>1,ROW(),"")) とした場合は、抽出先の式は =IF(COUNT($B$2:$B$10)<ROW(A1),"",INDEX(A:A,SMALL($B$2:$B$10,ROW(A1)))) と短く出来ます。 もし、セル番地を変更する時は、抽出先の式の ROW(A1) の部分は変更しないで 下さい。後は、作業列を非表示にします。 また、もし重複データを削除するのが目的なら、A列の項目名も含めて選択し、 データ>フィルタ>フィルタオプションの設定で、「抽出先」を「指定した範囲」、 「検索条件範囲」は空欄、「抽出範囲」欄をクリックし抽出先の先頭行をクリック、 「重複するレコードは無視する」にチェックを入れて「OK」を押すと、重複データ は間引かれて抽出されます。 はたして、ご希望に合ってるでしょうか? | |
| [質問一覧] | [HOME] |
| CEL412.規則性の無い表の項目の順番を正反対にする | 質問者:愛知県tochi-さん |
(つまりB1→D15,B2→D14,…,B15→D1,C1→E15,…,C15→E1) ????????????????????????????????????????????? A:愛知県tochi-さん、こんにちは。 色々方法があると思いますが、OFFSET関数を使用してはどうでしょうか? D1に、 =OFFSET(B$16,-ROW(),0) と入力して、右へ1つコピーし、下に15行目までコピーします。 出た値を「数式」じゃなく「値」に変換する時は、D列E列範囲を選択してコピーし、そのまま右クリック「形式を選択して貼り付け」で「値」を指定し、D列E列に貼り付けます。 この関数の書式は、OFFSET(基準,行数,列数[,高さ][,幅]) で、基準となるセルから、指定した行数、列数に移動した位置にあるセルを先頭にして、指定した高さ、幅を持つセル範囲を参照します。 行数に正の数を指定すると下方向へシフトし、負の数を指定すると上方向へシフトします。 また、列数に正の数を指定すると右方向へシフトし、負の数を指定すると左方向へシフトします。 「高さ」「幅」を省略すると、移動先のセルの内容を取り出すことができます。 この場合は、B$16(行だけ固定)を基準とし、行数は -ROW()(ROW() は、式の入った行番号を返します)で、マイナスですから上に移動します。 列数は0ですので、左右への移動はないです。 高さ、幅は省略してますので、移動先のセル内容を返します。 これでどうでしょうか? | |
| [質問一覧] | [HOME] |
| CEL413.数式を残してデータ(数値)のみを削除 | 質問者:埼玉県karumeraさん |
数式が数式バーに表示されていて、数値(答え)がセルに表示されている場合数値を消すと数式も一緒に消されてしまいますが、数式だけを残すこと出来ないでしょうか? 例えば、セルC5:3、D5:9、E:27(=C5*D5)。 セルCとDの数値を消すとセルEは「0」と表示されますが、この時の状態でセルEの数式(=C5*D5)を消さずに、表示されている「0」だけを削除、あるいは表示させない(隠す)ことは出来ないでしょうか? ????????????????????????????????????????????? A: 兵庫yuhkiです。 1.数式だけを残す方法 数値だけを選択して削除できれば良いですよね? 1)対象シートを表示。 2)メニューの[編集]−[ジャンプ]−[セル選択]で「定数」、 「数値」にチェックしてOK。 3)DELETEキーを押します。 2.0を消す方法 見た目だけですが・・・ 1)メニューの[ツール]−[オプション]−[表示]タブのウィンドウオプションで「ゼロ値」のチェックをはずします。 ただし、この場合は、数値で入力した0も消えてしまうことになります。 2)メニューの[編集]−[ジャンプ]−[セル選択]で「数式」、「数値」にチェックしてOKすると数式だけ選択されますので、メニューの[書式]−[セル]−[表示形式]タブで [分類]を「ユーザー設定」に、[種類]を「#」と入力してOKします。 上手く良くといいですね。 ではでは。 | |
| [質問一覧] | [HOME] |
| CEL414.マクロについて | 質問者:京都府kentaさん |
マクロに「DCOUNTA」関数を登録しました。 「=DCOUNTA申請状況!A3:H73,申請状況!B3,」 となるように登録したいのですが、実行されると'A3':'H73'・'B3'のようにセルの値に「’」がついてしまってエラーになります。 これはどうしようもないのでしょうか・・・? いちいち「’」を削除しながら作業するしかないのでしょうか? どうかよろしくお願いします。 ????????????????????????????????????????????? A: 万年マクロ初心者の兵庫yuhkiです。 マクロにDCOUNTA関数を登録されたとのことですが、マクロに 「=DCOUNTA申請状況!A3:H73,申請状況!B3,」 と記述されたと理解しましたが、よろしいですか? あるセルに書かれているように式を入力したいということであれば、A1="=DCOUNTA(申請状況!A3:H73,申請状況!B3)" とします。 ワークシート関数をマクロで使用する場合は、WorksheetFunctionを使用します。 詳しくは、VisualBasicのヘルプで「ワークシート関数」を検索してみてください。 はずしてたら、ごめんなさい。 ではでは。 | |
| [質問一覧] | [HOME] |
| CEL415.時間を10進数の数値に変更したい | 質問者:神奈川県kurofuneさん |
時間を10進数の数値に変更したい。 例1 01:50.1 ----> 110.1 例2 00:58.5 ----> 58.5 時間は全て分秒小数点第1位の数値で1個のセルの中に入っております。 宜しくお願いします。 ????????????????????????????????????????????? A: 神奈川県kurofuneさん、こんにちは。 時間は全て数値(シリアル値)なんですよね? それでしたら、変更する範囲を選択して、右クリック→「セルの書式設定」→「表示形式」タブで「ユーザー定義」を選択し、「種類」欄に [s].0 、2桁表示にする時は、[ss].0 と入力して下さい。 60秒以上の表示が可能になります。 ちなみに、24時間以上の表示は [h] とか[hh]、60分以上の表示は [m]とか[mm] というように [〜] で括れば表示できます。 | |
| [質問一覧] | [HOME] |
| [HOME] | [MAIL] |