[[20120505162503]] 『セルをランダムに非表示にする』(たろう) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『セルをランダムに非表示にする』(たろう)

よろしくお願い致します。

http://ozcircle.net/_uploader/92820622

上のURLのようにA1:H14の範囲に、数字がランダムにばらまいてあります。A1:H14にはすべてrank関数が入っており、関数が返した値が、上のURLのようになっています。

本題ですが、ランダムにばらまいてある1〜13までの数字のうち、「どれか1つをランダムに選んで、そのセルの内容を非表示にする」ということをしたいのですが、どのような関数を使えばよいのかわかりません。

また「どれか2つをランダムに選んで、そのセルの内容を非表示にする」ということもやりたいです。

あまり難しい関数はわからないので、できるだけ簡単な関数で、シンプルなコードで書いて頂けると、なおうれしいです。

どうぞ、よろしくお願い致します。

Excel2010,Windows7


>あまり難しい関数はわからないので、できるだけ簡単な関数で、シンプルなコードで書いて頂けると、なおうれしいです。

質問者のレベルに関らず、問題解決に必要なものというものが
存在するので、そのような要件を盛り込むのは、いかがなものか。

そもそも「簡単な」といっても、[たろう]さんが「簡単な」と思える
関数が何なのかなんて、こちらが解るわけありません。

また、このような発言の心理をウラ読みすると、
「私はがんばる心算ないから、キミたち、回答者さんが努力してよね」
ということになるので、蛇足どころか、非常にマイナス。

閑話休題。

質問内容、外部リンク先から判断して、下記の相談の
関連であると推測します。

[[20120118181519]] 『こんなものを作りたい』(初心者)
[[20120123171337]] 『こんなものをつくりたい』(初心者)

関数でリンク先画像のように表示しているのでしたら、
その関数も提示したほうがいいですね。その関数そのものを
改良する余地があるかもしれないし、クスリの飲み合わせのようなもので、
あちらを立てれば、こちらが立たず、ということもありますので。

非表示というわけには行きませんが、条件付書式でフォントを
セル背景色と同じ色にして見えにくくするという方針で。

どこか適当なセル範囲、例えば、J1:J13に =RAND() を入力。
I1に
=RANK(J1,$J$1:$J$13,1)
要件二つの場合はこの式をI2にコピー。

A1:H14を選択して、(Excel2010の場合)条件付書式>ルールの管理>
「新規のルール」をクリック、「指定の値を含むセルだけを書式設定」
「セルの値」「次の値に等しい」「=$I$1」、書式ボタンでフォントをセル背景色と同色に。

要件二つの場合は、さらに「新規のルール」をクリック、「指定の値を含むセルだけを書式設定」
「セルの値」「次の値に等しい」「=$I$2」、書式ボタンでフォントをセル背景色と同色に。

以上を設定して「OK」

(みやほりん)(-_∂)b

P.S.
先にあげた二つのトピックは質問しっぱなしの状態。
立場を逆にして、あなたがこれらの質問に回答した人だとしたら、
何の反応もない相談者にどのような感想を持ちますか?
同じ相談者と思える人の質問に、次回、前向きに回答する気に
なれるでしょうか?


 1〜13のいずれかの値2個を非表示にするのはこんな感じ? (Hatch)
Sub test_3()
    Dim r1 As Long, r2 As Long, flg As Boolean
    Dim u As Long
    Dim c As Range
        Range("A1:H14").NumberFormatLocal = "G/標準"
        u = 13
        Randomize
        r1 = Int((u - 1 + 1) * Rnd + 1)
        r2 = Int((u - 1 + 1) * Rnd + 1)
        flg = False
        If r1 = r2 Then flg = True
        Do While flg = True
            r2 = Int((u - 1 + 1) * Rnd + 1)
            If r1 = r2 Then flg = True
        Loop
        MsgBox r1 & "----" & r2
        For Each c In Range("A1:H14")
            If c.Value = r1 Or c.Value = r2 Then
                c.NumberFormatLocal = ";;;"
            End If
        Next c
End Sub


みなさま、どうもありがとうございました。(たろう)

マクロを簡単なVBAでカスタマイズし、画像編集ソフトなどと組み合わせることにより、希望しているものを作ることができました。

本当にお世話になりました。


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.