【復活求む!】惜しくも解散してしまったバンド|J-ROCK編 >>

excelど素人です。

A列 B列 C列 D列
2 2
3 0
5 2
7 1
11 2
13 1

上で示したように、A列に表示されている素数を3で割ったとき、余りが0ならB列に、1ならC列に、2ならD列に表示されるような表を作りたいです。
何とかA列に素数を表示することはできましたが、それからは全く何をしたらよいか分かりません。どなたか教えて頂けませんか?

質問者からの補足コメント

  • 自分なりに色々試したところ、自力で出来ました。ご協力頂いた皆さん、ありがとうございました!

      補足日時:2019/03/27 09:16

A 回答 (3件)

MOD関数で余りを出し、それをIF関数で各列それぞれ余りが○なら表示、それ以外は空欄というように式を作ればいいかと。

    • good
    • 0

添付図参照


B1: 示された表が役立たずになつちやつてるのか、つまりは、かういふこと?
添付図参照
B1: =IF(MOD($A1,3)=COLUMN(A1)-1,MOD($A1,3),"")
「excelど素人です。 A列 B列 C列」の回答画像3
    • good
    • 0
この回答へのお礼

そういう事です!
それを17、19、23・・・についても同様に余りが表示されていくような、上手い入力方法が知りたいです。

お礼日時:2019/03/27 08:47

>>余りが0ならB列に



⇒ B列に何を入れる? A列の値?余り?
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています

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

Qエクセル リストと完全一致するセルに色をつける

シート1のA列とB列に
aaa ccc
bbb ggg
ccc kkk
ddd ooo
と言うリストがあって、A1〜A4はAチーム、B1〜B4まではBチームと名前を付けています
シート2にAチームのリスト4個が続いているものがあればセルを赤、Bチームのリスト4個が続いているものがあればセルを黄色に塗りたいです
AチームとBチームの中には同じ品番がある時もあります
条件付き書式で設定は出来るでしょうか?

Aベストアンサー

(´・ω・`)
”○” の数を数えるんじゃないんだよなあ。

・・・本題・・・

条件付き書式ですよね。

シート2のリストの並び順は
 aaa
 ccc
 bbb
 ddd
では「Aチーム」と認識しないという事でよろしいでしょうか?
ならば、とても簡単です。

シート2の一覧において、

 判定するセル1
 判定するセル2
 判定するセル3
 色を付けるセル
 判定するセル4
 判定するセル5
 判定するセル6

という範囲について調べれば良いという事。

 判定するセル1
 判定するセル2
 判定するセル3
 色を付けるセル

 判定するセル2
 判定するセル3
 色を付けるセル
 判定するセル4

 判定するセル3
 色を付けるセル
 判定するセル4
 判定するセル5

 色を付けるセル
 判定するセル4
 判定するセル5
 判定するセル6

の4パターンについてそれぞれ調べれば良いだけ。

自分なら
 aaa-bbb-ccc-ddd
のようにシート1から文字列を作り、それが調べるセルで同じパターンになるかを調べます。
シート1はA5セルから、シート2はA11セルからデータが入力されているなら、

 シート1!A5 & シート1!A6 & シート1!A7 & シート1!A8 = A11 & A12 & A13 & A14
 シート1!A5 & シート1!A6 & シート1!A7 & シート1!A8 = A12 & A13 & A14 & A15
 シート1!A5 & シート1!A6 & シート1!A7 & シート1!A8 = A13 & A14 & A15 & A16
 シート1!A5 & シート1!A6 & シート1!A7 & シート1!A8 = A14 & A15 & A16 & A17

という条件になる。
この4つのうちの一つでも条件を満たせばセルに赤色を付ければいい。
「Bチーム」についても同様にすればいいので、
この場合、8つの条件式を設定することになります。

面倒でもこの考え方ができていないと、ちょっと条件が変わっただけで対処できずに終わります。
冒頭で「並び順」について書きましたが、並び順がシート1のリストの通りでなくとも色を付けたい場合でも、この考え方は必要ということです。

・・・
ちなみに厄介なのが、どちらのチームにも「ccc」がいるというところかな。
これが無ければ違う方法でシンプルにできるんですけどねえ。

(´・ω・`)
”○” の数を数えるんじゃないんだよなあ。

・・・本題・・・

条件付き書式ですよね。

シート2のリストの並び順は
 aaa
 ccc
 bbb
 ddd
では「Aチーム」と認識しないという事でよろしいでしょうか?
ならば、とても簡単です。

シート2の一覧において、

 判定するセル1
 判定するセル2
 判定するセル3
 色を付けるセル
 判定するセル4
 判定するセル5
 判定するセル6

という範囲について調べれば良いという事。

 判定するセル1
 判定するセル2
 判定するセル3
 色を付け...続きを読む

Qエクセルのデータ抽出方法を教えてください

下記のような表から、A列のコードをもとにして「D」列の「3」行目の100、200、300(ピンク色)のセルを参照したいのですが関数がわかりません。
別のシートに10000なら100、20000なら200と表示させたいです。
vlookupでは行が1行でないとできませんでした。

Aベストアンサー

以下でいかがですか。
H2 =INDEX(E2:E13,MATCH(G2,A2:A13,0)+1)

Qエクセルのファイルを開く際の質問です

エクセルのファイルを開くと、常にAの160のセルが左上に表示させるような方法はありませんでしょうか、みんなが使うので、いつも開くと、最期のほうのページが表示されます。
VBAになるのかと思いますが、思いつきません。
先頭行の固定は必要なのですが、なんとか途中のページにある文章を左上にいつも表示させて開きたいのです。どなたか、お救い下さい。

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

Aベストアンサー

こんばんは。

'//Thisworkbook モジュールに貼り付けます。
Private Sub Workbook_Open()
  Application.Goto Worksheets(2).Range("A160"), True
End Sub

マクロ付きのブック(xlsm)か、バイナリのブック(xlsb) で保存します。

ただし、もし、拡張子が、xlsx でマクロなしのブックを指定した場合は、個人用マクロブックなどを使った特別のブログラムが必要になります。それはまた、ご相談ください。

Q正と負の数値が混在する中で、最大値を求める計算式を教えてください。

正の数値と負の数値が300数個ある中で、最大値(負の数値だけの場合もあります)を求めたいのですが、どなたかお教えいただけませんか?どうぞよろしくお願いいたします。

Aベストアンサー

確認なんですけど、-1と-100なら-1が最大でいいんですよね?

Q「最小化」したファイルが元のサイズに戻ってしまう。

よろしくお願いします。

Excel 2010におきまして、例えば「A」という名前のファイルを開いていて、そのファイルを閉じずに「最小化」して、別の「B」というファイルを開いた際、「A」のファイルが自動で「最小化」が解除されてしまいますが、それを自動にて解除されないように設定することはできますでしょうか?

教えて下さい。

Aベストアンサー

Aファイルの最小化でExcelそのものを最小化したのでしょうか?

この場合だと、Bファイルをエクスプローラなどから開くと。同じ
インスタンスで開くので、Aファイルを開いたExcelでファイルが
立ち上がるので、別インスタンスとしてのExcelを立ち上げてから
Bファイルを開くようにしないと、最小化したものも同じExcel上で
立ち上がるので、元のAファイルも戻ります。
https://www.atmarkit.co.jp/ait/articles/0708/10/news133.html
これはExcel2013以降でも基本的に同じ動作をします。
(No.1の回答者さんが書いているのは、このことを簡潔に回答)

別インスタンスで立ち上げる方法は幾つかあります。以下のサイト
での[送る]を使った方法が一番簡単ではないかと思うので、試して
みてはいかが。。
https://www.atmarkit.co.jp/ait/articles/0708/10/news133_2.html

他に、[ファイル名を指定して実行]でコマンドラインとして /x を
付け、別インスタンスでファイルを起動する方法などもあります。
https://support.office.com/ja-jp/article/Microsoft-Office-%E8%A3%BD%E5%93%81%E3%81%AE%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89-%E3%83%A9%E3%82%A4%E3%83%B3-%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81-079164cd-4ef5-4178-b235-441737deb3a6#ID0EAABAAA=Excel

Aファイルの最小化でExcelそのものを最小化したのでしょうか?

この場合だと、Bファイルをエクスプローラなどから開くと。同じ
インスタンスで開くので、Aファイルを開いたExcelでファイルが
立ち上がるので、別インスタンスとしてのExcelを立ち上げてから
Bファイルを開くようにしないと、最小化したものも同じExcel上で
立ち上がるので、元のAファイルも戻ります。
https://www.atmarkit.co.jp/ait/articles/0708/10/news133.html
これはExcel2013以降でも基本的に同じ動作をします。
(No.1の回答者さんが書い...続きを読む

Qお世話になっております エクセルで有給の管理をしたいのですが 数式がわかりません。ご教示お願いします

お世話になっております

エクセルで有給の管理をしたいのですが
数式がわかりません。ご教示お願いします。
当社の場合、年休は
一日年休、時間年休、半日年休(1日の半分の年休)の三種類があります。
(8時間拘束です)

一日年休は時間に換算すると8時間
残日数と残時間を足してすべて時間に換算する、まではわかるのですが、頭を悩ませているのが、半休と時間年休の表示をわけることです。

<例>
年休残日数が16日と1時間あるとします。
そこで、半日年休を取ったとします。
16日+1時間を時間に換算すると129時間です
そこから半日と考えて4時間をマイナスすると125時間となりますが、これを下記の数式に入れると

=INT(125/8)&"日"&MOD(125,8)&"時間"

15日5時間となりますが、実際は15日と半日と1時間です。
4時間年休を取ったすればその場合は、残は15日5時間でOKです。

どういう計算式を入れればこのとおり表示できるでしょうか。

悩んで禿げそうです。
どなたかお知恵をお貸し願います。
よろしくお願いします

_______このように表示したい_____________

年月日|1日単位|半日単位|時間単位 残
2月5日   0    1    0   15日半日1時間
2月7日   0    0    4   14日半日5時間
2月8日   0    1    0   14日5時間

お世話になっております

エクセルで有給の管理をしたいのですが
数式がわかりません。ご教示お願いします。
当社の場合、年休は
一日年休、時間年休、半日年休(1日の半分の年休)の三種類があります。
(8時間拘束です)

一日年休は時間に換算すると8時間
残日数と残時間を足してすべて時間に換算する、まではわかるのですが、頭を悩ませているのが、半休と時間年休の表示をわけることです。

<例>
年休残日数が16日と1時間あるとします。
そこで、半日年休を取ったとします。
16日+1時間を時間に換算すると...続きを読む

Aベストアンサー

有給休暇の全てを時間単位で管理して、
残時間に対する最後の表示だけを、日+時間の表示にすればよいと思います。
日=残時間÷8の商、時間=その余り、で表せます。

年間有給時間=年間有給日数×8時間、として、
日休暇=8時間
半休=4時間(午前、午後とも)
時間給=時間に切り上げの時間数
これを消化ごとに減じていけばよい、と思います。

QExcel関数 賞味期限が何%経過したかを求める式

Excel関数 を教えてください!

賞味期限が何%経過しているかを求める式が作れません。

例 賞味期限 2020/07/01 (製造から未開封で30ヵ月)
この商品は、2019/01/23日時点では賞味期限は何%過ぎたことになるのでしょうか?

これが作れないと残業から解放されず、睡眠不足で辛いです。どうか助けてください。宜しくお願いします。

Aベストアンサー

A1のセルに製造日、B1のセルに賞味期限を日付で入れる(ただし、賞味期限は製造日からのカウントの場合)

例えばA1=2018/01/01、B2=2019/07/01として、
=(TODAY()-A1)/(B1-A1)
を計算させると、今日までで何割消化したかがでてきます。

QCODE関数から他の文字コードの求め方

セル A1 に1文字が入力されているとき、私は今まで JIS、SJISコードを次式で求めてきました。間違い、あるいは、より簡便な方法があればご指摘ください。

JISコード B1: =DEC2HEX(CODE(A1),4)
SJISコード C1: =DEC2HEX(IF(ROUNDUP(HEX2DEC(LEFT(B1,2))/2,0)+112<=159,ROUNDUP(HEX2DEC(LEFT(B1,2))/2,0)+112,ROUNDUP(HEX2DEC(LEFT(B1,2))/2,0)+112+64))&DEC2HEX(IF(MOD(HEX2DEC(LEFT(B1,2)),2),IF(HEX2DEC(RIGHT(B1,2))+32>=127,HEX2DEC(RIGHT(B1,2))+32,HEX2DEC(RIGHT(B1,2))+32-1),HEX2DEC(RIGHT(B1,2))+126))

それから、上記の関数を利用して、あるいは、他の方法でも、UNICODE を求める数式を教えてください。
ついでながら、区点コードを求める方法はありますでしょうか?

セル A1 に1文字が入力されているとき、私は今まで JIS、SJISコードを次式で求めてきました。間違い、あるいは、より簡便な方法があればご指摘ください。

JISコード B1: =DEC2HEX(CODE(A1),4)
SJISコード C1: =DEC2HEX(IF(ROUNDUP(HEX2DEC(LEFT(B1,2))/2,0)+112<=159,ROUNDUP(HEX2DEC(LEFT(B1,2))/2,0)+112,ROUNDUP(HEX2DEC(LEFT(B1,2))/2,0)+112+64))&DEC2HEX(IF(MOD(HEX2DEC(LEFT(B1,2)),2),IF(HEX2DEC(RIGHT(B1,2))+32>=127,HEX2DEC(RIGHT(B1,2))+32,HEX2DEC(RIGHT(B1,2))+32-1),HEX2DEC(RIGHT(B1,2))+12...続きを読む

Aベストアンサー

Shift JISコードとは、JISコードをずらす(シフトする)ことで実現しているコードです。
そのため、その法則に従って計算することで JIS←→Shift JIS の変換ができます。

UNICODEは、JISとは違った文字の並び順になっています。
そのため、対応表を使った変換となります。

JISを使った CODE / CHAR に対応した
UNICODE盤の UNICODE / UNICHAR があります。
ただし、古いExcelにはありません
https://support.office.com/ja-jp/article/unicode-%E9%96%A2%E6%95%B0-adb74aaa-a2a5-4dde-aff6-966e4e81f16f



> ついでながら、区点コードを求める方法はありますでしょうか?

「JIS 区点 Excel」で検索してみましょう。

Qユーザーフォームが消えない

今、ユーザーフォームを勉強しています。
手始めに、ラベルを表示して、2秒経ったら消す。
ということをやろうとして下記の通り書きましたが、
消えてくれません。
何処が間違っているのでしょうか。
宜しくお願いします。

Sub test2()
Load UserForm1
UserForm1.Label1.Caption = "ABC"
UserForm1.Show
Sleep 2000
UserForm1.Hide
Unload UserForm1
End Sub

Aベストアンサー

難しい質問ですね。
ご自身で参考にしたコードがあるのでしょうか。
ModalMode に関しては、なんとも言えないのは、UserForm 上で、Lable に命令を出しているからです。
それがなければ、後は補填するだけで済みます。
なお、Sleep を使っていらっしゃるようですが、Sleep 自体は、Win API ですから、もちろん、エラーが出ているはずです。

Load UserForm1
UserForm1.Label1.Caption = "ABC"
UserForm1.Show
Sleep 2000 --ここまでで、UserForm のメモリが安定しないので、Label の操作ができないのではないでしょうか。

ふつう、自己消去型のメッセージは、Win API を利用するのですが、UserForm を活かすなら、

Sub test2()
 Application.OnTime Now + TimeSerial(0, 0, 2), "UserFormColse"
 With UserForm1
  .Label1.Caption = "ABC" 'マクロが一定の終了をしないと出てこない
  .Show 'vbModeless 'この場合は、どちらでもよい。
 End With
End Sub

Sub UserFormColse()
 Unload UserForm1
End Sub

Label.Caption ="ABC" がなければ、問題はSleep の部分と余分な部分を切り落とすだけです。
こんなふうにしか私は思いつかなかったです。

その代用品として、このようなコードがあります。
Private Declare Function MessageBoxTimeoutA Lib "user32" (ByVal hWnd As Long, ByVal _
lpText As String, ByVal lpCaption As String, ByVal uType As Long, ByVal _
wLanguageId As Long, ByVal dwMilliseconds As Long) As Long

Sub TimeOutMessage()
MessageBoxTimeoutA 0&, "ABC", "メッセージ", vbMsgBoxSetForeground, 0, 2000 '2秒
End Sub

参考まで。

難しい質問ですね。
ご自身で参考にしたコードがあるのでしょうか。
ModalMode に関しては、なんとも言えないのは、UserForm 上で、Lable に命令を出しているからです。
それがなければ、後は補填するだけで済みます。
なお、Sleep を使っていらっしゃるようですが、Sleep 自体は、Win API ですから、もちろん、エラーが出ているはずです。

Load UserForm1
UserForm1.Label1.Caption = "ABC"
UserForm1.Show
Sleep 2000 --ここまでで、UserForm のメモリが安定しないので、Label の操作ができないのではないでし...続きを読む

QExcelで、もっとスマートに合計金額を求めたい

Excel 2007
Windows 10

Excelで、単価が入力された商品リストから、注文者ごとの合計金額を求めます。

添付画像の通り、「合計金額」の行には、「商品の注文数」×「単価」を、すべての商品文を足す関数を入力しています。例の場合は

=(B3*$B$8)+(C3*$C$8)+(D3*$D$8)+(E3*$E$8)

商品の種類が少ないうちはこれで良いと思うのですが、たとえば50種類、100種類と増えていった場合、関数がとても長くなってしまいますし、修正の必要が生じた場合に、チェックが大変です。

もっと、スマートに合計金額を求める方法があれば教えてください。

お願いします。

Aベストアンサー

SUMPRODUCT関数を使えばよいです。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング