Excel総合相談所 130
■ このスレッドは過去ログ倉庫に格納されています
▼━質問テンプレ (出来れば使ってね) ━━━
【1 OSの種類 .】 Windows**
【2 Excelのバージョン 】 Excel**
【3 VBAが使えるか .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
▼━関連スレ━━━━━━━━━━━━
前スレ
Excel総合相談所 129
https://find.5ch.net/search?q=excel
Excel VBA 質問スレ Part51
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 >>591訂正
あ、>ゼロより大きい値、か
マイナスはありえないのか(訂正不要)、マイナスがある場合は無視すべきなのか(訂正必要)
それとも最上位最下位の対象にしていいのか(訂正不要)で、ちょっと修正いるな >>591
どうもありがとうございました!!!!
他の人はどういうか知らないけど、すくなくとも世界で私だけは、
あなたのことを大天才と認定します。
助かりました!!!! 【1 OSの種類 .】 Windows8
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
A列に開始時間、B列に終了時間、C列に人の名前(毎回7人がデータにある)、D列に「業務中」もしくは「空き時間」が入った表があります。
このパターンでデータが縦並びになっています。
このとき、7人全員が業務中になっている時間と7人全員が空き時間になっている時間をそれぞれ合計で出したいのですがどうすれば良いでしょうか?
6人が業務中で1人が空き時間の場合などは集計対象外です。
あくまでも7人全員で被った範囲の時間の合計を出したいです。 【1 OSの種類 】 Windows10
【2 Excelのバージョン 】 Excel 2016
【3 VBAが使えるか 】 いいえ
【4 VBAでの回答の可否 】 否
ビルドを前に戻したくて
officec2rclient.exe /update user updatetoversion=16.0.8730.2122
を実行しました。
すると、
>Suggestion [3,General]: コマンド officec2rclient.exe は見つかりませんでしたが、現在の場所に存在します。
エラーが出てきます。
どうしたら解消できますか? vlookupの列番号はどう書くのが一番スマートなんだろうな
表自体に番号を仕込んだ方が良さそうな気がする >>597
意味不明なエラーメッセージに悩みましたが、解決したので質問を取り下げますm(_ _)m オフィス365
上の列?を3つぐらい選択して表を挿入すると
先頭の列しか表にならない
また角をドラッグしてしたにのばしてオートフィルで123456・・・みたいなのもできない
オフィス365はもしかして機能が大幅に劣るダメそふとなんですか? >>598
index,matchへ切り替えるのがスマート >>600
機能が劣るのではなく元々そういう仕様
気に入らないのならExcel2016にしましょう 素直にテーブルにして構造化参照使えやジジイがテーブル毛嫌いしてクソブック量産し続けるの本当にクソ >>602
もともとにするいみあいがわからんわ
オフィスで使ってた人が移行しずらいし。 indexもmatchも使ったことないな
これは縦方向の話で、それはvlookupでも別に困ってなかった
横方向の列指定を、3じゃなくてA3とか使って書ければ済むだけの話で、
indexの為に範囲指定したから登場したけど、同様に「A3を含む列」みたいな
指定ができれば後はvlookupの方がシンプルなのに >>604
Excel2010でも
A1に1を入れて、右下角の黒ぽちでしたにコピーした
だけだと1,2,3とはなってくれないよ1,1,1ですよ。
ctrlキー押しながらコピーするか。
右下の選択肢選ぶか。
1,2と打ってから2セル選んでフィルするか。
ま、この辺でしょうね。 >>604
あ、ごめん
3つくらいえらんでと言うのを見逃した
>>606は無視して エクセルで2つのファイルひらいているのに1窓で表示されます
どうやったら2つのブラウザみたいにできますか?
ウインドウズ10でdesktopを5ぐらい作っていて1つで
エクセルを開くと
すべてのデスクトップでエクセルが見えてしまいます
1つだけのdesktopで見えるようにしたいんですが >>605
そのa3に入れた数値が役に立たなくなるだろって言ってんのよ 2つのウインドウで表示はなんとかできましたが
ウインドウズ10で田薄のデスクトップを作成すると
他のデスクトップに表示され続けてしまうのがわかりません。 VLOOKUP(値,A1:C3,COLUMNS(A1:C3),TRUE) なんか変
COLUMNS(A1:C3) の A1:C3 とは言葉で言うとどういう領域なのか、説明できない
A1もC3も両方書いちゃうなら、
COLUMN(A3) - COLUMN(A1) + 1
の方が直感的に判る 【1 OSの種類 .】 Windows10 64bit
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可
ファイルサーバに置いたExcelのファイルを「ブックの共有」で複数人が同時に
アクセスして編集するんだけど、ときどき上書き保存できない場合がある。
編集した内容を確実に保存する方法ってあるんでしょうか? 共有を止めて、編集する人以外は読み取り専用にしておく方法もある
うっかり読み取り専用なのに編集してしまって、編集内容を失う悲劇も起きる >>611
COLUMNSにすると列の増減に対応できるって事?
a::cとかの方が良い気がする
>>615
他の人が保存してる時は保存できない
確実に保存する方法は多分、ない
ってかエクセルの共有はウンコすぎるので、共有使うならスプレッドシートの方がいいよ 1 OSの種類 .】 Windows 7
【2 Excelのバージョン 】 Excel 2007
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
(A9−A1)/8の解をB2〜9に表示がしたいです。
下記の条件で、B2〜9に入る数式を教えていただきたいです。
A1及びA9の数字は予め確定しています。
B1は空白です。
A2にはA1+B2を表示します。(以降A9まで同条件)
条件
(A9−A1)/8の解が、少数第二位以降
125と続く場合は、B2のみ少数第二位切上げ、B3以降は少数第二位切捨て
250と続く場合は、B3まで少数第二位切上げ、B4以降は少数第二位切捨て
375と続く場合は、B4まで少数第二位切上げ、B5以降は少数第二位切捨て
500と続く場合は、B5まで少数第二位切上げ、B6以降は少数第二位切捨て
625と続く場合は、B6まで少数第二位切上げ、B7以降は少数第二位切捨て
750と続く場合は、B7まで少数第二位切上げ、B8以降は少数第二位切捨て
875と続く場合は、B8まで少数第二位切上げ、B9以降は少数第二位切捨て
0と続く場合は、(A9−A1)/8の解をB1〜9にそのまま表示
つづく つづき
例
(A9−A1)/8の解が11.0375の場合
A B
1 100 -
2 111.1 11.1
3 122.2 11.1
4 133.3 11.1
5 144.3 11.0
6 155.3 11.0
7 166.3 11.0
8 177.3 11.0
9 188.3 11.0
よろしくおねがいします。 つづき
例
(A9−A1)/8の解が11.0375の場合
A B
1 100 -
2 111.1 11.1
3 122.2 11.1
4 133.3 11.1
5 144.3 11.0
6 155.3 11.0
7 166.3 11.0
8 177.3 11.0
9 188.3 11.0
よろしくおねがいします。 >>611
columns関数を使うならそりゃ大丈夫だけどね >>595
作業列使う上に、やたら長くなっちゃったけど。
あまりデバッグ時間とれてないから、何かおかしくなるパターンあったり
状況が違う場合はまた教えて。
1行目からデータが始まっていて(1行目に項目名がない状態)
E列を作業列とし、G1:H2 に結果をだしてる。
E1=IF(AND(COUNTIFS($A$1:$A1,$A1,$D$1:$D1,$D1)=1,COUNTIFS($A:$A,"<="&$A1,$B:$B,">"&$A1,$D:$D,$D1)=7),LARGE($A:$B,RANK($A1,$A:$B)-1)-$A1,0)
⇒以下オートフィルで下までコピー
G1=業務中
G2=SUMIF($D:$D,G1,$E:$E)
H1=空き時間
H2=SUMIF($D:$D,H1,$E:$E) >>618
作業列・・・というか一覧あったほうがやりやすかったから
D列(別にほかの列に変えてもいい)に条件の数字いれちゃったけどいい?
これまた長くてごめん。何かおかしかったら教えて。
D2=125
D3=250
D4=375
D5=500
D6=625
D7=750
D8=875
B2=IF(COUNTIF($D2:$D$8,MOD(INT(($A$9-$A$1)/8*10000),1000))<>0,ROUNDUP(($A$9-$A$1)/8,1),ROUNDDOWN(($A$9-$A$1)/8,1))
⇒以下B8までオートフィルで下までコピー
B9=ROUNDDOWN(($A$9-$A$1)/8,1) >>623
まずは、ありがとうございます。
例題は教えていただいた数式で求めていた結果が出ました。
次に模擬値で試してみたのですが、下記の場合に違う解が表示されます。
なぜこのようになるのか、お手数ですが教えていただけると助かります。
A9 38639.7
A1 38618.1
この場合B2〜9に表示したい結果は2.7なのですが、何故か2.6で表示されます。
A9 28639.7
A1 28618.1
この場合は、正しく2.7と表示されます。 >>616 617
さんくすこ。2chでこんなに親切なレスがついたのは初めてだ。(> <) >>624
あーでちゃったかー
それね、小数点の計算によるエクセル・・・というかプログラム的な問題なんだよね。
2進数での計算と10進数での表示による丸め問題。
問題が出たほうの数字をA1とA9に入れて、B9の数式を検証かけてもらうと、分かりやすく見えると思うけど、
A9-A1の、単純な少数計算の時点でおかしくなってるね。
解決方法としては・・・もし、A1とA9に入れる数字が、小数第一までしか入れないのなら
単純に10倍して整数計算させればどうにかなるかも。
第二まで入れる事もあるなら100倍ね。以下略。
(その後の処理も綺麗に直せよと他の回答者メンツから突っ込まれそうだけど、今ちょっとExcel触れなくてスマホから書き込んでるから許してw)
B2=IF(COUNTIF($D2:$D$8,MOD(INT(($A$9*10-$A$1*10)/80*10000),1000))<>0,ROUNDUP(($A$9*10-$A$1*10)/80,1),ROUNDDOWN(($A$9*10-$A$1*10)/80,1))
⇒以下B8までオートフィルで下までコピー
B9=ROUNDDOWN(($A$9*10-$A$1*10)/80,1) 100倍するんじゃなくて、この場合は8倍するのが正解
要は整数値で処理する いや100倍でいい
後は書式設定で小数っぽく見せれば良い >>628
プログラムは、ちゃんと勉強した訳じゃないから教えてほしいんだけど、
小数の結果が欲しい場合って、途中を全部整数で計算しても、
最後に10やら100やら1,000で割っちゃったら結局ダメ? >>630
それは目的による
途中を整数で処理するんなら、例えば結果を表示する時も数字はそのままで小数点を文字列処理した方がいい場合もある Excel2016でセルに0.1を10個入れて足したらちゃんと1.0000以下略になった
書式は数値で少数以下を15桁にした
昔とは内部処理が変わった?確かめ方が悪い? vbaだとこれだけでfalseになる
2013で確認
?(0.1 + 0.2 = 0.3)
False 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
前年比を知る表作成で質問があります。
https://prau-pc.jp/excel/growth-rate/#i-3
上記ページのC4の猫缶は
前年14,000から今年13,200に減り-6%でした。
この計算は理解できるのですが、
同じ表に、プラス成長とマイナス成長が混在する下記の様な状態の場合
http://www.kepco.co.jp/ir/financial/graph/images/graph_17.jpg
例えば
(A)14,000から13,200に減った値
(B)-14,000から-13,200に増えた値
が混在する場合、どのようにすれば良いのでしょうか?
(A)(B)共に-6%になってしまい困っております。 分母(基準値)は常に正にとる=>分母を絶対値にする
例えば
=(A1-A2)/abs(A2) -100が0になった場合、100%としていいんだろうか
100が0になった時に-100%なのは判るけど、それは最低が0という前提がある 2010と2016はずいぶんちがいますか?
2010はまだまだ安泰ですか? >>638
それは間隔尺度か比例尺度かを考えないといけない
上記の例は間隔尺度を前提。
比例尺度の場合は、温度で言えば分母に絶対0度(-273℃)のような
値の絶対値(abs(-273))が入る。
問題は分母が0の時だね。
この場合は"-"とかあるいはそのままエラー出しておく
しかないんじゃないかな。 -50 が 50になったら200%
-0.1が100になったら100000%
何かの役に立つ値が出ると思えない 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
1つのセルにtcp 80,81,90-101 udp 1000,1001とかあったとして(a1)
tcp 80 81 90 - 101 udp 1000 1001とそれぞれ別個のセル(a2〜a9)に入れる方法あったら教えて下さい
a1の 加工若干ならありです [データ]-[区切り位置]でスペースとカンマとマイナスを区切り文字にすれば行けそうだけどマイナスは消えるかなあ >>643
2段階にして、90-101だけもう一度"-"をデリミタにしてやるといいような。 >>639
見た目(雰囲気)がちょっと違う。平べったい感じ。
一番わかりやすい違いは、複数のブックを開いて”整列”で並べたときに「それぞれのブックにリボンが表示される」ので
「縦に並べて表示」は、縦長ディスプレイ必須ってとこでしょうか。[Ctrl]+[F1]でリボンを非表示にすればいいだけですが。
自分としては、2010の方が使いやすい。でもサポート終了まであと2年半ぐらいしかありません。 >>639
複数のエクセルファイル開いたとき複数のウィンドウで開けるから便利 >>647
ウィルスに感染する可能性が高まる
お金を出すか、ケチって個人情報ばらまくか、お好きに 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 まあまあ
【4 VBAでの回答の可否】 可
数年ぶりにエクセルとVBAをいじっている者です。
フォームのボタンクリックで、他のファイルから情報とってきたり集計したりと忙しく働く
システム(ってほどでもない)を作ったんだけど、ちょっとした時間が待てずにやたら
その辺をクリックしたりガチャガチャキーボード押すバカのせいで動作が不安定になる。
これを何とかしたいです。
たしか、マクロ実行時に、「この件の実行が終了するまではユーザーの操作受付停止」
「っていうか、ユーザー無視して、PC資源をこのマクロ実行に集中させる」
というVBAの常套句があった記憶があるんだけど、わかる人いますか? >>650
イベント禁止のこと?
Application.EnableEvents = False
ユーザーの誤操作をすべて無視するように作るのは、それなりに面倒だった記憶が >>651-652
勘違いだったかも。
お騒がせしました。
どうもすみませんでした。 Windows7、 Excel2010、VBA少しできます、できればVBAを使わない方法がしりたい
助けて下さい!!
あるセルに、
あいうえお(改行) かきくけこ(改行) さしすせそ(改行) たちつてと(改行)
なにぬねの(改行) はひふへほ(改行) まみむめも(改行)
なにぬねの(改行) はひふへほ(改行) まみむめも(改行)
と入力されたとします。そして別のセルが選択され、入力受付状態じゃなくなったとき
そのセルのサイズが高さ3文字、幅10文字分だったとして、下の行の方の3行を表示、つまり
----------------|-------------
なにぬねの |
はひふへほ | (となりのセル)
まみむめも |
------------------------------
と表示されるようにすることって可能ですか?
どうしても行が足りないときは上の方から表示されることしかできませんか? >>655
下揃えにして高さ決めればいけるんじゃ? >>656
いっぺん自分でやってみ
書式設定では無理だったよ
方法があるかどうか俺にはわからない >>655
Won10のoffice2016(365)だと、「下詰め」でいけるっぽい。
2010だと分からない。 1行からはみでる時に、はみ出さずにセル内だけで諦めさせる方法も知りたい
右のセルに空白か何か入れれば出来るけど、書式で >>655>>657
>>656だけどすまん、無理だった
下揃えってこんな挙動になるのね 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2016
【3 VBAが使えるか .】 使えない(抽出印刷のみコピペしながら使っている)
【4 VBAでの回答の可否】 可
入力規則のプルダウンリストについて
シート1
工事番号
1
1
2
2 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2016
【3 VBAが使えるか .】 使えない(抽出印刷のみコピペしながら使っている)
【4 VBAでの回答の可否】 可
入力規則のプルダウンリストについて
シート1
工事番号 工種
1 掘削
1 埋戻し
2 溶接
2 研磨
シート2に日報として、A1セルに工事番号1を入力した場合、B1のリストを
掘削、埋戻しにしたいです。
名前の定義ではシート1で工種が追加になることもあるので避けたいです。
シート1の列の配置はそのまま工事番号、工種で並べておきたいのですが、よい方法ございますか? ドロップダウンリストって結局は入力規則の一種に過ぎなくて、
入力した後はただの文字列だし、入力後に規則が変更されても何の反映もない
リスト化されているなら、それぞれにコードを振って、
コードで管理すればいろいろデータ活用できるのに ソートを末尾の文字(半角英数字)で行う方法を教えてください (1)一行目をセルに入れてドラッグするだけで↓のようにしたいのですが
=VLOOKUP(D3,D3:F100,3,0)
=VLOOKUP(D4,D3:F100,3,0)
=VLOOKUP(D5,D3:F100,3,0)
=VLOOKUP(D6,D3:F100,3,0)
=VLOOKUP(D7,D3:F100,3,0)
=VLOOKUP(D8,D3:F100,3,0)
=VLOOKUP(D9,D3:F100,3,0)
(2)ドラッグすると↓のようになってしまします
=VLOOKUP(D3,D3:F100,3,0)
=VLOOKUP(D4,D4:F101,3,0)
=VLOOKUP(D5,D5:F102,3,0)
=VLOOKUP(D6,D6:F103,3,0)
=VLOOKUP(D7,D7:F104,3,0)
=VLOOKUP(D8,D8:F105,3,0)
=VLOOKUP(D9,D9:F106,3,0)
(1)のようにする方法教えていただけないでしょうか >>669
相対アドレス、絶対アドレスを勉強すると良いよ >>670
ありがとうございます。できました。
=VLOOKUP(D3,$D$3:$F$100,3,0) >>668
A列に数字が入っているとしてB列に=MOD(A1,10)を入れて
B列でソートすればいいかと >>668
すみません英字もあるんだね
>>672は数字だけで考えた >>668
B列に
=RIGHT(A2,1)
でどうでしょう 普通に考えるとそれだろうな
1文字でいいのかという気はするけど 【1 OSの種類 .】 Windows10
【2 Excelのバージョン 】 Excel2016
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 可
https://i.imgur.com/BAJQU34.png
昨日の行動を名前の隣に表示させていのですが、良い方法はありますでしょうか?
Vlookupを試そうとしたのですが、こういった表示だと出来ませんでした。 >>678
できました!ありがとうございます。
ただ1行目以降連続して計算するにはどうすればよいでしょうか? >>680
範囲の前半(コロンの前の部分のみ)絶対参照にして、行番号をrow()-1とかにすればよいのでは?
もっとよい方法もありそうだけど。 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Office365
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 否
A B C D
1 鈴木 鈴木
2 佐藤 佐藤
3 山田 山田
4 五十嵐
5 乾
6 鈴木部長 ○ ○
7 佐藤課長 ○ ○
8 山田主任 ○ ○
9 五十嵐 ○
10 乾 ○
こんな感じの表で、関数の組み合わせで○を自動で埋めたいのですが可能でしょうか。
B-D列の1-5行までには、役職なしの名前が入っています。
A6-A10には、役職ありの名前が入っています。
1-5行までの名前がA列に存在すれば、該当する箇所に○を入れたいのです。
役職はあったりなかったりなので、LENやRIGHT等で機械的に文字列を取り出すことが
できませんし、名前も1文字から3文字まであるので、最初2文字という取り出し方も
できません。
VLOOKPUとかCOUNTIFとかいろいろ考えたのですが、どうにもうまくいきませんでした。 >>682
まず役職のリストを作ればうまくいくような気がする。 >>681
助かりました。
本当にありがとうございます。 >>683
別のセルに役職のリストを作っておいて、if文でネストを作ってVLOOKUPということでしょうか?
できれば余計な情報を書いたセルやシートは作りたくないのですが 役職の数次第だけど。
パッと思いつくのは、substitute関数使って役職名を削除する。
リスト作らなくもできるけど。 >>686
なるほど、substituteで役職部分を消した文字列を作ってvlookupするんですね https://goo.gl/xnKHDt
この請求書の真中の表みたいに
バックをグレーと白の交互にするのは背景色変更すればいいだけなので楽なのですが
数量単価の間の白い表の枠ってどうやってるのでしょうか? >>660
その列のアルファベットの右線をダブルクリック ■ このスレッドは過去ログ倉庫に格納されています