X



Excel総合相談所 131

■ このスレッドは過去ログ倉庫に格納されています
2018/04/14(土) 19:27:06.37
▼━質問テンプレ (出来れば使ってね) ━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否

▼━関連スレ━━━━━━━━━━━━

前スレ
Excel総合相談所 130
https://find.5ch.net/search?q=excel

Excel VBA 質問スレ Part51(1000到達済み)
https://find.5ch.net/search?q=excel+vba

【質問不可】Excel総合相談所スレの雑談・議論スレ4
https://find.5ch.net/search?q=excel+%E3%80%80%E7%9B%B8%E8%AB%87%E6%89%80
2018/05/26(土) 14:44:02.48
vlookup入れっぱなしのファイルのこと言ってたんか
びつくり
2018/05/26(土) 15:28:46.71
vlookup match
は分かるけど、
index match match
はどういう式になるんだ?
=INDEX(B:B,MATCH("b",MATCH("title",A1:C1,0),0))
2018/05/26(土) 15:29:06.47
って書いた瞬間に気づいた
indexの第三引数を使うのね、失礼
2018/05/26(土) 16:29:58.93
>>568
オマエアレだろ、 VBAスレでpowershell推してた奴。
2018/05/26(土) 16:35:33.37
>>582
どこいってもスレチな話題で荒らしてるのか
しかも匂わせるだけとかw
いやらしいやっちゃ
2018/05/26(土) 17:11:27.08
>>582
粘着乙
相当悔しかったんだな w
2018/05/26(土) 17:38:00.79
powershellはシステムの深いところに入ろうとすると必須だけど、
普通のことをやるだけならbatファイルで事足りる
大抵の人にとっては面白そうだけど使いみちがない
2018/05/26(土) 17:51:26.48
>>578
古いバージョンだと引数をひとつでも減らせるのはかなり大きなメリットだったね
今も式の見やすさに影響あるけど
2018/05/26(土) 18:17:44.26
vlookupだと範囲で指定できるので名前付き範囲と相性がいい
適当なテーブルにHogeTableって名前つければ
VLOOKUP(key,HogeTable,2,0)
のようになんのテーブルから引っ張ってきてるかわかりやすい

index matchだとoffsetも併用しなければならず冗長
indexの取得範囲とmatchの検索範囲それぞれに別名つけるとか無駄だし
2018/05/26(土) 18:22:28.77
>>584
マジであいつなのかw
恥ずかしいヤだなwww
2018/05/26(土) 18:53:27.28
>>588
当てちゃったんじゃんw
2018/05/26(土) 18:55:48.23
使うことを「悪」とまで書くのはちょっと異常さを感じたな
2018/05/26(土) 19:06:21.78
上のほうでただのLOOKUPが優れてるとか書かれてたけど
そのLOOKUPはどうなん?
俺使った時ないけど
2018/05/26(土) 19:25:22.44
>>509>>512だよね
自分もlookupは使ったことはるか昔に一度しかなく記憶も…
何が優れてるかよくわからない
でも上のやり取りからするにvlookup撲滅厨はlookupと見ただけで発狂してるってのもありそうな
解説欲しいね
2018/05/26(土) 20:48:00.95
vlookup撲滅厨はあれだけ豪語してたのにlookupの利点は説明しないんだね。
2018/05/26(土) 20:56:52.68
名前の定義
column
使えばmatchやindex使うより簡単で確実
2018/05/26(土) 21:40:40.04
>>534
ん?いや、だから5列目って言ってたものは6列目になるから、その6列目をピックアップするようになるの??
2018/05/26(土) 21:50:54.87
indirect使いまくらなきゃ何でもいい
2018/05/26(土) 22:41:00.41
>>595
絶対値にしてるかどうかでも変わってくるんじゃない?
2018/05/26(土) 23:00:10.96
>>597
絶対値で5列目って言ってた場合、列挿入したら崩壊するのかなあみたいな
2018/05/26(土) 23:36:23.35
>>598
あのー、崩壊とかいちいち書き方に具体性なく曖昧なんですね
2018/05/27(日) 00:24:22.86
>>586
古いバージョンだとどういうメリットがあったの?
2018/05/27(日) 00:28:03.54
>>547だわ、今帰ってきた
買い物+飲んでたが、お前らずっとこんなことで争ってたのか
もうちょい有意義に人生使ったほうが良いぞ

vlookupは嫌いだけど、vlookupmatchはいいね
使わせてもらうわ
602名無しさん@そうだ選挙にいこう
垢版 |
2018/05/27(日) 00:37:47.23
indexmatchのほうがいいな
左に検索できないのは致命的だし
参照方向が変わる場合でもhlookupに切り替えなくていいし
2018/05/27(日) 00:47:27.92
>>601
ユニークキー使うとんちもなくvlookup批判放置してったおっさんかよーw
vlookup matchは手軽でいいよ
けどあまり大量にはおススメしないし、数式残すならindex match matchだな
2018/05/27(日) 01:15:50.51
>>603
すまないね、vlooklupも捨てたもんじゃないな
vlookupが悪と言ってすいませんでした
2018/05/27(日) 01:27:34.49
vlookup撲滅厨は2匹
>>546=>>568>>604
2018/05/27(日) 01:38:55.46
てかExcel使うようになったの最近なんだけど、猛者ってほどでもないんだな、みんな
2018/05/27(日) 01:42:52.21
確かに老害おめでたい感じのもいるよ
2018/05/27(日) 01:55:16.49
ダサっ
2018/05/27(日) 02:34:29.88
vlookupって小数検索するの苦手だから気をつけたほうがいいよ
そういう意味で私はあまり使わないかな
共有する相手がlookupしか使えないかつ小数検索をしない場合にはlookupをなるべく使ってるけど
2018/05/27(日) 02:34:36.65
>>606
その上にaccessが待ってるし、更に上に法律関係の業務が待っている
excelだけ極めるなんて、一般事務だけじゃないだろうか
2018/05/27(日) 05:14:45.74
>>587
これ
612名無しさん@そうだ選挙にいこう
垢版 |
2018/05/27(日) 06:06:24.66
>>600
一つの式に対する引数の数の制限が厳しかった

最近のバージョンは万単位だが20世紀のバージョンだと一桁だった
2018/05/27(日) 08:06:52.47
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 否

ifで分岐させた値を処理する時はどのように書けばよいでしょうか
例えばa1とb1で大きい方を取得、round()に入れる時は
・if(a1>b1,round(a1,0),round(b1,0))
・round(if(a1>b1,a1,b1),0)
どちらが良いですか?_
2018/05/27(日) 09:30:49.01
大きい方ならMAXで取って来ればいいんじゃないの

=ROUND(MAX(A1,B1),0)
2018/05/27(日) 09:32:00.69
>>613
=ROUND(MAX(A1,B1),0)

どうしてもIFを使いたい場合、数式の見やすさを取るか、短さを取るかなど、場合に応じて使い分ければいい
2018/05/27(日) 09:34:14.62
ifとroundどっちを先に書けばいいかって事なら、好みの問題じゃないかな
個人的にはifが先に来た方が、「結果を分岐させてるんだな」てのが伝わりやすくて好きだけど
2018/05/27(日) 10:08:04.61
>>613
俺ならround(max(a1,b1),0)って書く気がする
どうでもいいけど
2018/05/27(日) 12:19:49.02
>>614-617
有難うございます
確かに今回のケースはmax()で良かったですね

今回お聞きしたいのは、>>616ということです
roundで全体をくくると短くなりますが、ifを先に書いたほうが読みやすいと思いまして
2018/05/27(日) 14:08:06.21
人に計算式を見せるなんて場面がどれほどあるかだと思うが
自分でもわかりづらくてミスするとかは論外
2018/05/27(日) 14:21:08.10
なんでそんなにポンポンと関数がひらめくんだ?

すごいわ。
2018/05/27(日) 14:54:30.50
>>606
VBAスレいけば少しはいるかもね
2018/05/27(日) 15:11:21.86
>>613
・round(if(a1>b1,a1,b1),0)
これぐらいの長さならifを先に書いたほうがいいけど、もっと長くなるならroundを外に出したほうが良い
ifがどれだけ続いてもroundし忘れることがないというメリットもある
2018/05/27(日) 16:47:38.88
>>621
おけ
そっち行ってみるわ
2018/05/27(日) 17:36:06.68
わかりやすくするんならifしたあと、別セルでroundしてもいいと思うよ
2018/05/27(日) 17:40:23.23
>>622
最初に来る関数は、まず何をやっているか示すみたいな傾向はあるね
四捨五入をメインにするって宣言は良いかと思う
2018/05/27(日) 17:54:36.14
【1 OSの種類         .】 Windows8
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

職場でピボットテーブルの行ラベルを2列に分けるやり方を聞かれ、
レポートのレイアウトで表形式を選ぶよう回答しました
その人のやりたいことはできたのですが、期待した回答ではなかったようで、
「前任者のやり方は違った、シュッとやったらぱっと変わった」と言われています
他にレイアウトを変えるやり方はありますか?
シュッ、ぱっ、の手の動きがマウスのドラッグ操作っぽいのですが、
ググってもうまく探せなくて、同じことを何度も聞かれ困っています
2018/05/27(日) 19:01:35.81
>>626
てかその人任せな奴はなんなんだよ
あと質問するならもうちょっと具体的にできないのかな。。
まず何をしたいのか明確に書いてよ
結果的にしたいレイアウトは表形式なの?それともデフォルトのコンパクト形式なの?
2018/05/27(日) 19:03:22.95
>>626
まず自分がどういうやり方教えたのか書いてよ。
リボンからとか、右クリックからとかいろいろあるじゃん。
2018/05/27(日) 19:08:21.73
なんだろ。。フィールドの設定?
2018/05/27(日) 19:37:33.42
>>627-628
すみません。
やりたいことは、コンパクト形式から表形式への変更です。
リボンの「レポートのレイアウト」から「表形式で表示」を選ぶやり方を教えました。
前任者は違うやり方で変更していたらしいのですが、詳しいことがわからず、
もし他の方法をご存知の方がいたらと思い質問しました。
2018/05/27(日) 20:00:57.66
ピボットテーブルを新規作成した場合ですか?
2018/05/28(月) 07:33:32.59
前任者がよく使うパターンのVBA用意していて、ボタンひとつで実行していたんじゃね?
2018/05/28(月) 09:18:12.03
それを他の人にも配布していたとも考えにくい
2018/05/28(月) 22:51:08.58
エクセルのVBAって独学では厳しいですか?

プログラムとかの知識は全くないです。

やはりパソコン教室に通った方がいいんでしょか?

プログラムの知識とかない方で修得された方の意見が聞きたいです。
2018/05/28(月) 23:11:07.97
>>634
厳しいといえば厳しい
厳しくないといえば厳しくない
とにかく最初の一歩が超難解
それさえクリアできればいくらでも上達できるんだけど
2018/05/28(月) 23:11:55.69
>>634
現時点でエクセルがどれくらい使えるかが問題で、全然使えないならvbaを習っても独学でも難しいと思う。
逆にある程度使えるなら独学でできると思います。
個人的な目安としては、以下のようなことが一通りできること。

オーフィル、表示形式、条件付き書式などを理解して使える。
vlookup、round、sumif 、countifなどの基礎関数を組み合わせて使える。
if関数を数段階の入れ子にして使える。
2018/05/28(月) 23:16:23.28
classを理解できれば物凄い幅が広がるんだけどね
そこがまた敷居が高い
638634
垢版 |
2018/05/28(月) 23:20:08.22
ありがとうございます。

関数もここにいる人たちみたいに矢継ぎ早に出てくるレベルではありません。

上で記載のあった関数などに慣れたら学びたいと思います。
2018/05/28(月) 23:34:02.84
>>638
オレの場合はエクセルの入門書をほぼ理解したくらいでVBAの入門書を買った
VBA入門書レベルが理解できるだけでも凄く便利だから気軽にチャレンジしてほしい
2018/05/28(月) 23:50:08.11
VBAは覚えてもあまり幸せにはなれないので、
なるべく近寄らずに済む方法を探した方がいい
2018/05/28(月) 23:55:22.09
確かに業務上(趣味でも構わんが)具体的なビジョンが無いとVBAやっても無意味だな
発想力や権力が無いやつは辞めといた方が良い
2018/05/29(火) 01:02:39.45
>>634
Excelシート上でFizzBuzz問題(ググれ)が解ければプログラミングセンスあるから独学でいける
解けなかったら何をどうしてもプログラミングできないから諦めろ
2018/05/29(火) 01:31:20.38
>>642
的はずれ乙!
2018/05/29(火) 01:36:12.83
>>634
何かやりたいこともないのに漠然とVBAを覚えたいの?時間もったいないしやらないほうがいいと思う
具体的にやりたいことがあるんなら、パソコン教室とか本よりさっさとそれをここで相談したほうが良い
2018/05/29(火) 01:36:50.25
>>642
ワークシート関数でまず解けってこと?
2018/05/29(火) 01:37:54.99
>>644
いいじゃん
とりあえず関数から始めて、その時になったらまた来るでしょ
2018/05/29(火) 07:24:06.16
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2013
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

配列を返す方法ってありますか?
index(if(boolean,a:a,b:b),match(a1,c:c,0))
のように、配列を返して分岐させたいです
648名無しさん@そうだ選挙にいこう
垢版 |
2018/05/29(火) 07:51:25.08
>>646
何でも良いから作るのが大事だよな
自力でなにか作らないと、理解は難しい
2018/05/29(火) 08:47:37.04
>>643
解けないの?
2018/05/29(火) 15:25:33.37
>>648
vbaって楽しいものじゃないから仕事ベースでないと漠然とはね
これからvbaに時間かけるなら別の言語覚えた方が未来は明るそう
今は何がいい?Python?
651名無しさん@そうだ選挙にいこう
垢版 |
2018/05/29(火) 15:42:25.25
よろしくお願いします
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

シート上にフォームコントロールのチェックボックスがあるのですが、
VBAでこのチェックボックスの表示/非表示を切り替えたいです。
チェックボックスの名前は、chA1からchA5までです。
この名前を変数に入れて指定したいのですが、

me!.controls(hensu) では実行時エラー438がでてきます。

どう書けばいいのでしょうか?
2018/05/29(火) 16:00:13.56
>>651
びっくり不要
2018/05/29(火) 16:06:24.11
>>642
しつもーん
最初の1は直接入力していいの?
2018/05/29(火) 18:32:27.05
>>646
ゴールがないと覚えないでしょ
暇人じゃねえんだからさ
2018/05/29(火) 19:15:33.01
>>654
あんたの考え方押し付けんのやめなさいよ
本人が>>636のアドバイス受けてまず関数に慣れるって言ってんだからいーじゃん
別にここで速攻質問しなくたってw
なに過大解釈してんのさ
2018/05/29(火) 19:17:45.36
>>655
ここで質問させてドヤりたいんだよw
2018/05/29(火) 19:37:10.40
>>653
A列に1から100まで並べてB列に数式入力すればいいんじゃね
慣れてる人はROW()でも使えばいい
問題の本質はそこじゃないし
2018/05/29(火) 19:50:06.43
>>657
rowだと文字列になる?
char使おうと思って

そのやり方なら一瞬で終わるよね

そうですよね
本来プログラム言語でやるものであって
2018/05/29(火) 20:19:53.93
>>658
一瞬で終わるなら君にはプログラミングセンスがあるって事だろ
誇るといい
それすらできない人を見抜くテストだ
660名無しさん@そうだ選挙にいこう
垢版 |
2018/05/29(火) 20:34:11.97
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010

他のセルを参照しているセルの表示を、できれば表示形式のユーザー定義
設定によって思い通りにしたいです。

・参照先が空白のときは0ではなく、空白のまま
・参照先が空白でないときは\100,000みたいな通貨タイプ

この2つの条件を同時に満たしたいです。
0表示回避は[=0]""としたらできました。でもこれだと、空白でないときに通貨表示できません。

なにかいい方法はないでしょうか?
やはり、=IF(参照先="","",参照先) とするしかないでしょうか?
2018/05/29(火) 20:50:44.44
>>660
https://support.microsoft.com/ja-jp/help/883199
https://answers.microsoft.com/ja-jp/msoffice/forum/msoffice_excel-mso_other-mso_2013_release/excel-tips-%E9%9B%86/c696a248-1567-45e9-8511-e55646999478
2018/05/29(火) 21:05:56.97
>>660
ユーザー定義の設定だけど、それ円マーク\も欲しいの?
化けててよくわかんない
663名無しさん@そうだ選挙にいこう
垢版 |
2018/05/29(火) 21:06:31.19
あ、こっちもだ
2018/05/29(火) 21:16:45.53
>>660
とりあえずこれ?

http://excel.usefulhp.com/excel-waza/excel-waza28.htm
2018/05/29(火) 21:31:22.33
>>660
if関数とtext関数の組み合わせじゃダメ?
666名無しさん@そうだ選挙にいこう
垢版 |
2018/05/30(水) 00:39:54.27
A列に日付が並んでいます。


2018/01/10
2018/01/23
2018/02/01
2018/02/15
2018/03/03
2018/04/05
2018/05/01
2018/05/21


月ごとの件数を関数で自動で出せるようにしたいのですが、例えば5月の場合
=COUNTIF(A:A,"2018/05")としても数えてくれません。
どうすれば関数で数えられるでしょうか?

【1 OSの種類          】 Windows7
【2 Excelのバージョン   】 Excel2010
2018/05/30(水) 00:46:55.92
>>666
ほんとの質問?
2018/05/30(水) 00:47:46.97
>>666
じゃ、2018~の前にdate関数足せば?
2018/05/30(水) 00:52:36.16
またはdate valueか
2018/05/30(水) 00:57:59.81
日付まで入ってるようだからdatevalueで期間を指定
2018/05/30(水) 07:41:31.47
>>666
=COUNTIFS(A:A,">=2018/5/1",A:A,"<2018/6/1")

>>668-670
お前ら・・・
2018/05/30(水) 08:10:35.07
>>671
は?なに?
2018/05/30(水) 09:36:38.05
せめて一度でも試してから回答しろよ
それとも質問読んでないのか
2018/05/30(水) 13:40:26.80
どうして?
>>670で十分じゃない?
期間指定って書いてあるからあそこまで出来てる人なら自分でできるっしょ
今までもこういう回答の仕方がここではデフォじゃん
なんで今更キーキー言ってるの?
このくらいは試さなくても頭の中で浮かぶよ
あと俺ならぴったり5/31までにするけどね
2018/05/30(水) 13:41:59.57
つうかたぶん>>671が自分で質問して回答してんだろーなーと思ってるし
2018/05/30(水) 13:44:45.25
適当にこーじゃねーの?ってそれやってもすぐに完成しないような回答の方が質問者のためになるとか、散々そういうやり取りがあったから、へぇーそういうとこなんだなと思っただけ
ヒントだけとかさ
本当は丁寧な回答の方がいいと思ってるけど
2018/05/30(水) 13:45:46.65
俺macだから家でExcel開かないしさー
2018/05/30(水) 13:48:46.06
あと汎用性を高くするために日付は別のセルを参照させるとかも質問見てすぐ浮かんでる
だって式にいちいち日付打つのめんどいもん
けどどこまで要求してるか不明だから書かなかった
ていうか>>671ってなんなの?
自分が答えたいなら答えてそれで終わりじゃん
このスレの主なの?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況