セルA1~AnにA組の生徒の名前(姓のみ)が、同様にセルB1~BmにB組の生徒の名前が入っています。以下E組まであります。それぞれの組の人数は異なります。また、各組共、同じ姓の者が入り交じって居るかも知れません。

[質問1]
各組に同姓者が居れば2名目以降は省いて、各組の中に同姓者が居ないような(見かけ上人数を減らしたような)表に作り替えたい。

[質問2]
質問1で作った表を元に、A組を基準として、B~E組にA組と同じ姓の者が居れば、その者の姓名を赤字にしたい。

[補足]
・条件付き書式で、うまく行きませんでした。
・VLOOKUPを使うようであれば、(苦手なので)少し詳しくお願いします。
・勝手ば言いますがよろしくお願いします。

A 回答 (2件)

こんにちは



 以下のページがご参考になるのでは?

【エクセル技道場】

-編集-重複するレコードは無視する
http://www2.odn.ne.jp/excel/waza/edit.html#SEC30

-条件付き書式-別シートにある文字列との重複チェック
http://www2.odn.ne.jp/excel/waza/cformat.html#SE …

参考URL:http://www2.odn.ne.jp/excel/waza/edit.html#SEC30,http://www2.odn.ne.jp/excel/waza/cformat.html#SE …
    • good
    • 0
この回答へのお礼

わあ~助かりました。不慣れなので少し時間がかかりましたが、質問1,2とも解決です。関数を使わずにできるとは思いませんでした。(条件付き書式の中でcountifを使いましたが・・・)
それにしても便利なサイトがあるんですね。早速「お気に入り」へ登録です。
有り難うございました。

お礼日時:2001/09/17 21:35

関数や機能を使う方法は大変(面倒)なのでマクロを書いてみました。



ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュール で標準モジュールを挿入し、そのコードウインドウに下記マクロ(Public~End Subをコピーして)を貼り付けます。
シートに戻って、ツール→マクロ→マクロ でTableMake を実行します。
今はH列から表を作り出します。複数のシートがあれば、個別に実行します。ご参考に。

Public Sub TableMake()
  Const strSCol = "H" '作成する表を開始する列。今はH列
  Dim strCol As Integer '作成する表を開始する列の番号
    strCol = Asc(strSCol) - Asc("A") + 1
  Dim r As Integer '行カウンタ
  Dim c As Integer '列カウンタ
  Dim rwNum(5) As Integer 'A~E列の重複無しのデータ数
  Dim rwWrt As Integer '書き出す行

  Columns(strSCol & ":" & Chr(Asc(strSCol) + 4)).ClearContents '書き込む列をクリア
  With WorksheetFunction
    'A~E列から重複を除く
    For c = 1 To 5
      r = 1: rwWrt = 0
      While Cells(r, c) <> ""
        If .CountIf(Range(Cells(1, c), Cells(r, c)), "=" & Cells(r, c)) = 1 Then
          rwWrt = rwWrt + 1
          Cells(rwWrt, strCol + c - 1) = Cells(r, c)
        End If
        r = r + 1
      Wend
      rwNum(c) = r - 1
    Next
    'B~E列とA列を照合
    Dim rgA As Range '書き換えたA列
    Set rgA = Range(Cells(1, strCol), Cells(rwNum(1), strCol))
    For c = strCol + 1 To strCol + 4
      For r = 1 To rwNum(c - strCol)
        If .CountIf(rgA, "=" & Cells(r, c)) = 1 Then
          Cells(r, c).Font.ColorIndex = 3 'フォント=赤
        Else
          Cells(r, c).Font.ColorIndex = xlAutomatic 'フォント=自動に戻す
        End If
      Next
    Next
  End With
End Sub
    • good
    • 0
この回答へのお礼

ずいぶん細かくご回答頂き恐縮です。じつは#1ーkbonbさんの回答で解決しました。
マクロは数年前、覚えたばかりの頃にウィルスに感染して懲りてしまってからご無沙汰なんです。
ご回答をプリントして、また少し勉強し直してみます。
有り難うございました。

お礼日時:2001/09/17 21:44

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QEXCELの表、組[A列]:番号[B列] を 組[A列]:番号[行]に変換する方法

EXCELに
A列に組、B列に番号がそれぞれ反映されている表があります。
これを
A列に組、同行に番号が横並びに配置された状態に変更したいと考えております(添付画像)。

D列にはA列の組名を「重複なし」で貼り付けます。
このとき、E列~K列にどのような数式を入力すればよろしいでしょうか?
E1に入力する数式を教えていただけるとありがたいです。
何卒よろしくお願いいたします。

Aベストアンサー

こんばんは!

画像の配置だとE1セルに
=IF($D1="","",IFERROR(INDEX($B$1:$B$1000,SMALL(IF($A$1:$A$1000=$D1,ROW($A$1:$A$1000)),COLUMN(A1))),""))

配列数式になりますので、Ctrl+Shift+Enterで確定!
この画面からコピー&ペーストする場合は
上記数式をドラッグ&コピー → E1セルを選択 → 数式バー内に貼り付け →そのまま(編集可能なまま)
Ctrl+Shiftキーを押しながらEnterキーで確定!
数式の前後に{ }マークが入り配列数式になります。

最後にE1セルのフィルハンドルで列・行方向にずぃ~~~!っとフィル&コピーします。

こんな感じではどうでしょうか?m(_ _)m

Q[原紙]→[スキャナー]→[フォトショップ]→[エクセル]での原寸印刷のやり方

タイトルに書きましたとおり、[原紙]→[スキャナー]→[フォトショップ]→[エクセル]で、最初に取り込んだ[原紙]と全く同じサイズで印刷に出したいのですが、原寸よりも小さくなってしまうので困っています…。

紙に印刷された画像をスキャナで取り込み、フォトショップでgif画像にしました。
と、ここまでは原寸だったのですが、エクセルに貼り付けて印刷しましたら、実際のものよりも一回り小さくなって印刷されてしまいました。
縦横比は同じです。
2.33cmが、1.75cmになりました。

エクセルに貼り付けるときに、「挿入」→「図」→「ファイル」から貼り付けました。
「図の書式設定」では100%になっています。

普段は[原紙]→[スキャナー]→[フォトショップ]→[イラストレーター]で印刷しているのですが、その時は原寸で出ます。(今回もその方法なら原寸なのですが…)

原寸で印刷するにはどうしたらいいのでしょうか?
よろしくお願い致します。

Aベストアンサー

画像を貼り付けるエクセルのシートは事前にページ設定が出来てますでしょうか?
メニューバーで表示>改ページプレビューの設定にして見やすいサイズに表示倍率を上のツールバーで設定してください。青色の改ページラインが貼り付けた画像とほぼ同じになっていますか?画像より大きければドラッグして改ページラインを画像に合わせてください。

Q[色]+#,##0;[色]-#,##0;[色]0;@ と[<10]#.0;0 同時設定可能ですか?

よろしくお願いします
いつもgooの皆さんには大変お世話になっております
お陰様でエクセルが大分進歩しました
win8.1でエクセルは2013です

タイトルの通り、2つの書式は同時に設定できますか?
可能であればその書き方を教えていただけないでしょうか?
同時に設定したい書式は下記のとおりです

[色]+#,##0;[色]-#,##0;[色]0;@  と [<10]#.0;0 です

Aベストアンサー

こんばんは!

おそらくセルの書式設定のユーザ定義は最大3個までしか設定できなかったともいます。

ユーザー定義の欄に
[赤][<0]-#,##0;[青][<10]0.0;[青]#,##0;@
としてみてください。
① マイナスの場合のフォント色は「赤で3桁のカンマ区切り」
② プラスの場合で10未満の場合は「青で小数点以下一けた表示」
③ プラスで10以上の場合は「青で3桁のカンマ区切り」
その他(文字列)の場合は「自動」(黒)

以上のような表示になると思いますが、
「0」の場合の設定ができません。
「0」の場合の表示桁数は一桁でフォント色は「自動」がお望みなのではないでしょうか?
おそらく手動でのセルの書式設定のユーザー定義ではどれか一つを犠牲にする必要があるのではないかと思います。
(できる方法があればごめんなさいね。)

ただ、お望みの方法ではないかもしれませんが、
上記条件付き書式のセル変更があればマクロで書式を変えてやる方法があります。

マクロでやるとなるとわざわざセルの書式設定を手動でやる意味がないので
敢えて今回はこの程度で・・・m(_ _)m

こんばんは!

おそらくセルの書式設定のユーザ定義は最大3個までしか設定できなかったともいます。

ユーザー定義の欄に
[赤][<0]-#,##0;[青][<10]0.0;[青]#,##0;@
としてみてください。
① マイナスの場合のフォント色は「赤で3桁のカンマ区切り」
② プラスの場合で10未満の場合は「青で小数点以下一けた表示」
③ プラスで10以上の場合は「青で3桁のカンマ区切り」
その他(文字列)の場合は「自動」(黒)

以上のような表示になると思いますが、
「0」の場合の設定ができません。
「0」の場合の表示桁数は一...続きを読む

Q[セルの書式設定][横位置]の[インデント]の単位

添付図は
1.セル A1 を選択
2.[書式]→[セル]→[配置]を実行
3.[横位置]として“左詰め(インデント)”を選択
4.[インデント]として“2”を選択
5.[文字の制御]として“折り返して全体を表示する”を選択
した後で、次の文を入力した状態を示しています。
Mao Asada successfully landed a triple axle and earned her new personal best score of 142.71, but placed sixth overall due to a poor performance in the short program.
フォントの種類は Courier New です。
なお、標準書式セル A2 にも上と同じ文を入力しています。

ちなみに、私は Excel 2002 を使用しています。

さて、セル A2 と比較して分かるように、セル A1 の左端は約3文字分のスペース幅になっています。このスペース幅とインデント数値との関係を調べてみると次のようになりました。
インデント値 左端スペース幅
    0    0文字分(スペースなし)
    1    約2文字分
    2    約3文字分
    3    約5文字分
    4    約7文字分

[インデント]で設定する数値の単位は何なのでしょうか?
そのことを説明した記述を紹介していただけたら助かります。

添付図は
1.セル A1 を選択
2.[書式]→[セル]→[配置]を実行
3.[横位置]として“左詰め(インデント)”を選択
4.[インデント]として“2”を選択
5.[文字の制御]として“折り返して全体を表示する”を選択
した後で、次の文を入力した状態を示しています。
Mao Asada successfully landed a triple axle and earned her new personal best score of 142.71, but placed sixth overall due to a poor performance in the short program.
フォントの種類は Courier New です。
なお、標準書式セル A2 にも上と同じ文...続きを読む

Aベストアンサー

> インデント]で設定する数値の単位は何なのでしょうか?
> そのことを説明した記述を紹介していただけたら助かります。

下記URLのページには、次のように説明されています。

『インデントの幅は、Excelの初期設定のフォントサイズである「MSゴシック 11ポイント」の文字数を基準とした単位で指定されるため、フォントサイズが異なるセル同士でも同じ間隔でインデントを設定することができます。』

「セルに入力した文字列を1文字分だけ右にずらしたい(Excel)」
http://www.jpita.or.jp/hpv3/ziten/mokutekibetu/ex_59.html


Defaultの「MSゴシック 11ポイント」は、
「ツール」メニュー→「オプション」→「全般」タブで、設定されている「標準のフォント」および「サイズ」によります。

「Excel の [セルの書式設定] ダイアログ ボックスの設定を制御および理解する方法」
http://support.microsoft.com/kb/264372/ja

Qエクセルで[A1]月と[B1]日を一つのセルに

いつもお世話になっております。
エクセル2007で、A列に「月」を、B列に「日」を入力してあり、
これをC列に「□月□日」とまとめたいです。
調べてみて、=DATE(A1,B1,C1)という数字式にする方法があるとわかったのですが、
これでは、「□年」も入ってしまう上、やってみると、
A列:10、B列:10、C列:1としたところ、
D列に「1910/10/1」となってしまいました。

A列の「月」と、B列の「日」を、C列に「□月□日」と表示させるには、
どのようにすればいいのでしょうか?

お詳しい方、教えてください。

Aベストアンサー

DATE関数を使って、あとはセルの書式設定で表示法を変えます。
さんこうに
http://excel.onushi.com/function/date.htm


人気Q&Aランキング

おすすめ情報