X



Excel総合相談所 132
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@そうだ選挙にいこう
垢版 |
2018/07/01(日) 12:22:32.86
▼━質問テンプレ (出来れば使ってね) ━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否

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

前スレ
Excel総合相談所 131
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
0101名無しさん@そうだ選挙にいこう
垢版 |
2018/07/15(日) 11:34:23.42
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

お願いします

IF(ISERR(FIND("旅行",B5)),"",1)

上記関数で、B5に入力されている文字列のなかに「旅行」という文字列が含まれていたら1と表示され、含まれていなければ空欄になります

以下の理解であってますでしょうか、また、もっと簡単な方法があれば教えてください


B5セルに、FIND関数で「旅行」が含まれているかを検索し、旅行という文字列が含まれていたら先頭から何文字目にあるかの数字が返され、含まれていなければ#value!となると思います
エラーの理由は、旅行という文字列がないからです
さらに、ISERRでN/A以外のエラーか否か判定され、エラーならIFの真の場合の空欄が返され、旅行という文字列が含まれていたらエラーではないため偽の場合の値1が返されます

これであってますでしょうか

また、もっと簡単な方法はありますでしょうか教えてくださいm(__)m
0103名無しさん@そうだ選挙にいこう
垢版 |
2018/07/15(日) 13:50:52.65
>>99
フィルタがかかってるとか?
http://www.excel.studio-kazu.jp/kw/20050624073812.html

俺もこの挙動はよくわからん。
めんどいからセル結合しなくなった

>>101
あってる

個人的にはiserr()は使わないほうが良いと思う
俺はエラーの内容なんて覚えたくないから、エラー判定は常時iserror()としている
全ての関数のN/Aエラーかどうかを覚えきれるなら、iserr()を使っても良いんじゃないかな

もう少し簡素にする方法としては、iferror()を使う事が挙げられる
=+IFERROR(FIND("旅行",B5),0)

ただ、文字列が見つかった場合は毎回1が返るわけではなく、1以上の数値になることに注意
B5="あああ旅行"
なら
=+IFERROR(FIND("旅行",B5),0)
は4が返る

後、見つからなかった時の返り値は空白ではなく、0にしたほうが色々と都合が良い
-1でもいい。
※他言語だと-1を返すこともある為。好みとしが言いようがないが、エクセルの場合は0で良いと思う

>>102
substitute()の関数名が長いのが嫌だわ
これもう少し短くならんかねぇ
0107名無しさん@そうだ選挙にいこう
垢版 |
2018/07/15(日) 18:48:24.37
=SUBSTITUTEとか
=CONCATENETEとか
長いよなw

CONCATENATEって&で繋ぐのと何か大きな違いってあるん?
=CONCATENATE(A1,A2)
=A1&A2
って一緒っぽくね?
0108名無しさん@そうだ選挙にいこう
垢版 |
2018/07/15(日) 18:54:02.08
Excelのプロ?は=+をつかうと決まってるわけでもなかろうし こんなところで素人をバカにしても虚しいだけだぞおっさん ま、おれもおっさんだが
0113名無しさん@そうだ選挙にいこう
垢版 |
2018/07/16(月) 07:50:40.88
=+とか書く奴はクソだわな
横着してテンキーで入れてる奴もクソだが、それが格好いいとか思って書き込んでる奴はさらにクソ
0115名無しさん@そうだ選挙にいこう
垢版 |
2018/07/16(月) 07:59:06.60
元ロータスユーザーなら@から関数書き始めて自動変換で=始まりの関数式にする
わざわざ=+なんてのを書くやつは知識もないクソなうえにそれを自慢げに披露するクソ
後から見る奴の事全く考えてない自己中のクソ
0119名無しさん@そうだ選挙にいこう
垢版 |
2018/07/17(火) 11:31:55.25
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
A列が出力された手入力の数値で、B列のように行毎の差分値を自動的に計算させたいです。
B列の血v算式を手入力bキる以外でA列行毎の差分を計算させることは可能でしょうか?
https://i.imgur.com/9YP5s2p.jpg
0121名無しさん@そうだ選挙にいこう
垢版 |
2018/07/17(火) 13:30:10.18
>>119
言葉の意味はよく分からないけど、エスパー気味に回答すると

B1に計算式を入力 =A2-A1
B1セルを下方向にオートフィルでコピー
(フィルハンドルをダブルクリックすると速い)
0122名無しさん@そうだ選挙にいこう
垢版 |
2018/07/17(火) 19:09:56.87
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2016
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

11行目から24行目まで非表示になっているのを、まとめて再表示したいのですがやり方を教えてください

10~25行を選択して、カーソルが二重線に上下矢印になってから右クリック、再表示をしても何も反応がありません

どうしたらまとめて再表示できるのでしょうか教えてくださいm(__)m
0129名無しさん@そうだ選挙にいこう
垢版 |
2018/07/19(木) 14:31:43.66
数式を入れて計算!(ここでは10.5とかほどよい桁で表示される)

オートフィルで数式をコピーする

桁数が14桁くらいになってセル内表示しきれなくなる

って現象どうにかしたいのだけど……
0138名無しさん@そうだ選挙にいこう
垢版 |
2018/07/23(月) 21:47:57.91
alt+enterでセル内で改行したテーブルを作ったけど、vlookupを使って表示をさせようとすると改行されずに1行で表示されてしまいます
なんとか2行で表示させることはできませんか?
0140名無しさん@そうだ選挙にいこう
垢版 |
2018/07/23(月) 21:58:35.14
>>139
言葉足らずで申し訳ありません・・
センターリングで2行で表示をさせたいのです・・
0142名無しさん@そうだ選挙にいこう
垢版 |
2018/07/23(月) 22:43:44.64
>>141
有難うございます
ですが、データベースなので結合とかは避けたいのです、、
0144名無しさん@そうだ選挙にいこう
垢版 |
2018/07/23(月) 23:05:55.68
>>143
有難うございます
商品名によって長さが異なるので、スペースを使って調整するのはちょっと、、
0148名無しさん@そうだ選挙にいこう
垢版 |
2018/07/26(木) 21:34:54.09
A列とB列を比較して絶対値の大きい方の値をシー列に表示を各行ごとにやっていく関数教えてください
0152名無しさん@そうだ選挙にいこう
垢版 |
2018/07/27(金) 14:55:29.21
ありがとうございます
無事できました
0153名無しさん@そうだ選挙にいこう
垢版 |
2018/07/27(金) 23:39:21.75
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2016
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

質問があります。
下記表があり、自動で今月の商品を抽出できるようにしたいのですが
記録のマクロで、A5をコピーしフィルターに貼付けるようにしたら
2018-07が貼り付きます
A5は=today()なので来月は2018-08が自動で抽出させるにはどうすれば宜しいでしょうか?

   a     b    c   d    e
1   年    商品 数量 金額  2018-07
2 2018-06 りんご 2  200
3 2018-07 いちご 2  500
4 2018-07 ばなな 1  150



Sub Macro1()
'
' Macro1 Macro
'

'
Range("e1").Select
Selection.Copy
ActiveSheet.ListObjects("sheet1").Range.AutoFilter Field:=1, Criteria1:= _
"2018-07"
End Sub
0154名無しさん@そうだ選挙にいこう
垢版 |
2018/07/28(土) 02:15:58.72
>>153
A5にtoday関数というのが、よく分からない。
普通、A列も下方向にデータが増えて行くのでは?
2018-07も、手入力でハイフンまで打ってるのかな?
どう入力するかはともかく表示形式で設定した方がいいような気もするけど。
0158153
垢版 |
2018/07/28(土) 07:13:25.83
さっそくの回答ありがとうございます

>>154>>156
すみませんA5ではなくE1でした
A列には2018-08など年月データが増えていきます
2018-の表示はうちのPCからCSVで出力した時に自然とそう出力されるので
E1には=TEXT(TODAY(),"yyyy-mm")としています

>>155
すみません書き間違えました
【4 VBAでの回答の可否】 可です

色々と書き間違えていてみませんがご回答よろしくお願いします
0160154
垢版 |
2018/07/28(土) 10:00:15.36
Sub test()
Dim myYearMonth As String
myYearMonth = Format(Date, "yyyy-mm")
Range("A1").AutoFilter 1, myYearMonth
End Sub
0161154
垢版 |
2018/07/28(土) 10:21:55.79
>>158
すみません、翌月でしたね。どちらにしても、E1にtoday関数は不要です。

Sub test()
Dim myYearMonth As String
myYearMonth = Format(DateSerial(Year(Now), Month(Now) + 1, 1), "yyyy-mm")
Range("A1").AutoFilter 1, myYearMonth
End Sub

E1にtoday関数を使いたい場合は、いくつか方法があると思いますが、簡単なのは
F1に=TEXT(DATE(YEAR(E1), MONTH(E1)+1, 1),"yyyy-mm")と数式を入れておいて
上記コードの2行のRange("E1")をRange("F1")にすればよいかと。
0162161
垢版 |
2018/07/28(土) 10:25:05.31
何度もすみません。下の3行は書き間違いなので、無視してください。
0163名無しさん@そうだ選挙にいこう
垢版 |
2018/07/28(土) 15:53:27.01
>>143-147
有難うございました!
会社のPCでしか確認できなかったのでお礼が遅くなり申し訳ありませんでした
0164153
垢版 |
2018/07/28(土) 18:04:14.47
>>154さんありがとうございます。
今月のデータのみ抽出したいので160で大丈夫です。

>>159さんもありがとうございました。
0168名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 02:31:03.49
転職した今の中小企業は見栄えの関係でセルの結合ばかり使ったファイルでうんざり
財務諸表の加工をマクロでして見せたら、なんでもマクロで解決できない?と要求されて困ってる

自分のマクロの使い方はテーブル化されたシンプルなデータを加工・抽出や定型文書とかにしか使ってません
皆さんはどんなことに使ってます?
マクロの可能性とやらを教えてくださいw

あと、VBAは一読して挫折したけど、真剣に勉強する価値はありますか?
0171名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 06:24:41.45
【1 OSの種類         .】Windows10
【2 Excelのバージョン   】 Excel2013
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

〇・△・□・✕のような記号をセルに入力して、〇か□の記号が入力されているうちの、一番右側のセルの位置(例えばC3)を表示するにはどうすればよろしいでしょうか。

どの関数を使うのかのヒントでもよいのでお願いいたします。
0174名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 09:35:44.79
シートの一覧を出して選択して移動したり、
図形の中に書かれている文字列を検索・置換したり、
全シートのカーソル位置をA1に揃えたり、
書き込み禁止状態で編集しようとしたら警告したり、

みたいないろんな痒いところに手が届く便利機能満載のマクロか何かが
あった筈なんだけど、どこにあるか知りませんか?
0175名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 09:41:15.50
>>174
そういうのはライブラリやアドインという
ここの連中は自前で作ってしまえるので、多分みんな知らない
「エクセル ライブラリ」とかで検索したほうが早いかも
0177名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 13:00:17.09
ここで、質問があってるか分からないのですが、

Web上にExcelファイルを置いて、
ブラウザ上で、限られたメンバーのみが閲覧編集出来るサイトなど有りますか?
0181名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 15:22:32.62
>>180
じゃあスプレッドシート
エクセルからスプレッドシートに変換すればブラウザ上でも編集できる
ダウンロードはエクセル形式に戻すことも可能
0183名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 15:43:06.38
>>180
何をやりたいかによるけど、
onedriveはクラウドサービスなんだから、URLを教えればいいし、
Excel onlineでwebブラウザ上で基本的な編集はできる。
Excel desktopとExcel onlineの機能差はググれ。
0184名無しさん@そうだ選挙にいこう
垢版 |
2018/07/29(日) 22:27:00.04
ほかのユーザーが使用中のだめ保存できませんでしたって手でくるのはどうしたらいいの?
0186名無しさん@そうだ選挙にいこう
垢版 |
2018/07/30(月) 00:28:37.36
うちは逆に開けない時があるわ

NASにあるパスワードを掛けてない共有フォルダ内ににある
Excelファイルを開こうとしてエラーが出て読みこめず、何度かクリックしてたら読み込めたり
パスワード要求されて全く読めなくなったら再起動して解決とか
NASの問題なのかな
0188名無しさん@そうだ選挙にいこう
垢版 |
2018/07/30(月) 18:07:19.10
すみません、教えてください。
a、b2つの会員名簿のファイルがあります。
aは会員の抜粋、bは全会員です。
住所と電話番号はbにしか入っていません。
これをaに転記したいのです。
どちらのファイルにもb列に会員IDが入っています。
これに紐づけてbの住所と電話番号を
aに引っ張ってこれないでしょうか?
office365solo、MacBook Airです。
0189名無しさん@そうだ選挙にいこう
垢版 |
2018/07/30(月) 18:38:38.63
【1 OSの種類         .】Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

エクセル初心者です。
A列に上限200文字くらいまでのフリーコメント欄があります。
A列のテキストの中に「クレーム」という文字があった場合、B列に「●」を表示させるにはどうしたら良いでしょうか?
0191名無しさん@そうだ選挙にいこう
垢版 |
2018/07/30(月) 19:42:36.48
>>189
いくつか方法があるけど、
if関数、countif関数、ワイルドカードを使う場合
=IF(COUNTIF(A1,"*クレーム*")<>0,"〇","×")
if関数、substutute関数、len関数を使う場合
=IF(LEN(A1)<>LEN(SUBSTITUTE(A1,"クレーム","")),"〇","×")
if関数、iferror関数、serach関数を使う場合
=IFERROR(IF(SEARCH("クレーム",A1),"〇"),"×")
0192191
垢版 |
2018/07/30(月) 19:44:48.34
>>188
普通にvlookup関数か、index関数とmatch関数でいけるのでは?
0193名無しさん@そうだ選挙にいこう
垢版 |
2018/07/31(火) 00:05:26.10
>>191
横レスだけど、MOUSで勉強でもされましたか?
ネストとかになるとネットで調べないと対応できなくて
0194191
垢版 |
2018/07/31(火) 00:45:07.53
MOSは持ってないですが、我流よりは独学でもいいので
体系的に学習した方がいいかもしれません。
というほど私も詳しくないですが。

ネストは慣れでしょうけど、
1.作業列使ってシンプルに書く。
2.必要に応じてそれを1つの式にする。
という段階を経てやるのがいいのではないでしょうか。
0195名無しさん@そうだ選挙にいこう
垢版 |
2018/07/31(火) 06:45:40.60
>>188
=index(bの住所列,match(aの会員ID,bの会員ID列,0))
=index(bの電話番号列,match(aの会員ID,bの会員ID列,0))
0196名無しさん@そうだ選挙にいこう
垢版 |
2018/07/31(火) 10:53:49.27
>>191
横レスだけどlenはなくてもいけるよ
0197191
垢版 |
2018/07/31(火) 20:42:47.96
>>196
ああ、そうですね。言われてみるとその通りです。
=IF(A1<>SUBSTITUTE(A1,"クレーム",""),"〇","×")
ということは、3つの中でこれが一番シンプルかも。
0199名無しさん@そうだ選挙にいこう
垢版 |
2018/07/31(火) 23:23:29.31
超初心者です。ブイルックアップが全くわかりません!教えてください!
■ このスレッドは過去ログ倉庫に格納されています

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