Excel総合相談所 133
■ このスレッドは過去ログ倉庫に格納されています
▼━質問テンプレ (出来れば使ってね) ━━━
【1 OSの種類 .】 Windows**
【2 Excelのバージョン 】 Excel**
【3 VBAが使えるか .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
▼━関連スレ━━━━━━━━━━━━
前スレ
Excel総合相談所 132
https://mevius.5ch.net/test/read.cgi/bsoft/1530415352/
Excel VBA 質問スレ Part57
https://mevius.5ch.net/test/read.cgi/tech/1536583359/
【質問不可】Excel総合相談所スレの雑談・議論スレ4
https://mevius.5ch.net/test/read.cgi/bsoft/1489108851/ >>166
自決しました
=INDIRECT(“シートその1!A”&(ROUND(ROW()/3,0)+1))
シートその2で下に3つ下がった時シートその1の1つ下がった参照が
できるようになりました >>167
おいおい、「自決」の意味、わかってるのか?
そんな省略形、流行ってないし、
シャレになっとらんがな。 すみません教えてください。
A16〜A30まで指定したセルなんですが
空白セルを詰めて
C1から縦の順番の列に表示させたいのですが表示されません。
画像にC1の関数を載せたのですがどこがダメだかわかる方よろしくお願いします。
https://imgur.com/a/rGXHtjU すみまそん
もう頭の中がぐちゃぐちゃで日本語すらうまく書けません(泣) >>170
こんな風なの作ってみた
=OFFSET($A$16,(ROW(A16)-(ROW($A$16)))*2,0) 1つとばしw
みんな頭いいな、配列数式って何が処理結果で出てくるか理解できねえ。量子演算みたいだ >>174
返信ありがとうですm(_ _)m
ですが自分は理解力ないのでうまくいかないです(泣)
めんぼくねえっす
いただいた関数をC1に書き込んで見たところ画像のようになってしまいました。
なんでCの列の空白が縮まんないし0の数字になるんだろう(^_^;)
ちなみにB1セルには
=COUNT($A$16:A16)と打ち込んでます。
https://imgur.com/a/XoAJLEM >>177
170では入力セルにひとつ飛ばしの規則性があった
174はそれに基づいた式
ところが177ではふたつ飛ばしになっているからうまくいかない
173にある式そのままででできるからそっち使うといいよ >>177
ああ、ごめん一つとばしじゃなく
二つ飛ばしだったのね。勘違いした。
じゃ、2を掛けるんじゃなくて3掛ければいけます
=OFFSET($A$16,(ROW(A16)-(ROW($A$16)))*3,0) >>168
この掲示板でお決まりのネタなのに、本気で突っ込んでんのか >>180
例えシャレのつもりの、限定流通でも、
身内にいたので、その言葉の使い方には抵抗感がある。 >>177
この式は、もし元の2行飛ばしのデータが、A1から始まっていたとすると
=OFFSET($A$1,(ROW(A1)-1)*3,0)
となります。
ROW(A1)というのはA1の行番号、ようは1となり
ROW(A1)-1は結果として0となります。
それにより、最初に参照する式はつぎを表すことになります。
=OFFSET($A$1,0,0)
この式は、A1から0行先(同じ行)の0列(同じ列)を参照してください
よって、A1を参照しますという式になります。
これを一行下にコピーする内容は
=OFFSET($A$1,1*3,0)
ということになるので実際の中身は、
=OFFSET($A$1,3,0)
ですから、A1から始まる3行目の同じ列を参照する
ということになります。
これがA16から始まっているので、行番号調整のため
ROW(A16)-(ROW($A$16)
という式が入っています >>184
うおおおおおおおお!神だああああ!
できました!
ありがとうございますっ!
いやーー ホンマわかりやすい説明ありがとうございましたm(_ _)m 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2013
【3 VBAが使えるか .】 ぎりぎり
【4 VBAでの回答の可否】 可
Sub 新 ()
Sheets("新").Copy Before:=Sheets(1)
Range("C5").Select
End Sub
これで新しいシートのC5セルから書き込んでいるのですが
上記を実行時にシート名を自動で入力できませんか?
シート名は連番ですが古いのは削除しているので
右のシート+1 みたいのがいいのかなと思っています。
1500 1499 1498 新
こんな感じで1498以前はないです。
これにマクロを実行したら新しいシートの名が1501に
なるものを教えてください。 Sheets(1).name=Val(Sheets(2).name)+1 >>187
早速、ありがとうございます。
実行は会社のPCなので休み明けに試します。
数年ぶりの書き込みなのでレス番の仕方もわからない。
(手打ちしました。) >>188
すまん、すごく個人的な質問だけど、>>186ってスマホでIEかchromeなどから全部書き込んだの? >>185
データが5つしかないなら、=A16,=A19,=A22…とやれば一瞬だったのに >>189
そうじゃないけど
確か1クリで >> が打てたと
思ったから >>187
出来ました。ありがとうございます。スカッとしました。
感謝します。 すみませ〜ん。教えてくだせえませ。
画像のようにA17〜29に数字、B17〜29に名前があります。
それをE1〜13に数字、その横のF1〜F13のセルに名前も一緒に入るようにする為にはどのような関数を使えばよいのでしょうか?
今はLARGE関数を使って大きい数字の順番になってますが出来ればスモール関数かなにかで小さい数字の順番にしたいです。
https://imgur.com/a/fZtssM3 >>195
うわっ!できました!
あなたもしかしてExcelの神ですか(笑)
お早い回答ありがとうございますっ!
ホンマありがとうございました
助かりましたm(_ _)m 最初からそう質問すればいいのに
やはり170はひとつ飛ばしでもふたつ飛ばしでもなかったか >>197
そうなんです(^_^;)
質問の仕方から勉強しなさいとよく怒られるワタスですです。 >>198
周りは本当に迷惑してるからもうちょっと真面目にやったほうが良いと思う
その内本気で殴られるかも 何回もすみませ〜ん(泣)
先ほどから質問させて頂いてるものなんです、
Dの列に0がある場合なんですが
Gの列にSMALL関数を使った時に
G1〜G3まで空白になってしまい空白のセルができてしまいました。
そこで最終的には空白を詰めて小さい数字順に並べたいんですが・・・
よろしくお願いしますm(_ _)m
https://imgur.com/gallery/XY7VJyy.jpg >>199
ホントですよね(^_^;)
ここまで親切丁寧に教えてくださった
あなた様にはホント感謝しております。
逆に自分だったら3年ロムれと言っていたでしょう(笑) >>205
度々のご無礼失礼いたしました。
ありがとうございますm(_ _)m >>206
small()は仕様上、0を含めての順位付けしかできない
手っ取り早いのは元の表から0を抜くことだけど、それが逆に手間になるなら配列数式を使う
配列数式が分からなければ検索しろ
http://fast-uploader.com/file/7098679096928/ >>207
本当にありがとうございました。
お陰様で無事できました。
これをタダでこんなに親切に教えて頂いた事に心から感謝いたします。 【1 OSの種類 .】 Windows10
【2 Excelのバージョン 】2013
【3 VBAが使えるか 】いいえ
【4 VBAでの回答の可否】 否
工事毎管理する複数のファイル、シートをデータの更新をする度に
入力したデータを特定の別シートに転記したいのですが出来ますか? >>209
毎回全データ更新で良ければ(期間指定なども可)、
・個別シートはテーブルにする
・これらのクエリーをそれぞれ作る
・もし、個々のシートが地点別で、項目が同じで合算したいとかなら、
更にクエリー作って地点を「追加」しておけば、
定例作業でのデータ収集はボタンひとつ。
・もし、個別シートの様式は別で、時間軸が共通しているとかなら、
PowerQueryでも簡単なリレーショナルDBみたいなのが出来るっぼい。
(自分ではまだ試してないけど)
では? >>211
すいません。初心者なので内容を理解できません。
工事毎に分けたファイル内にある管理シートにデータを追記する毎に別に設定した専用のシートに転記したいんです。
今は追記したデータの確認を各シートまで遡らないといけなくて
追記内容を自動で一覧表にできれば大変捗ります。 ファイルごとに決まったセルに「工事名」「追記する場所」があるんなら
外部参照で引っ張った一覧を作ればいい。
(例: ='[○○工事.xlsx]設定シート'!$B$5 )
追記ってのが複数セルに跨った場所の色々書かれたり、多数の項目とか、
そもそも参照する法則なりが決まってないのなら、なにもできない
現場名・終了時間・作業内容1・2・3・4 を一覧にしてて、既定のKY票あたりから引っ張るなら、参照かな 【1 OSの種類 .】Windows7
【2 Excelのバージョン 】2010
【3 VBAが使えるか 】環境的には可/知能的には否
【4 VBAでの回答の可否】丸々コピペでイケるレベルなら可
1日/2日/ … 31日/月計という名の32シートが有り、日毎のシートは非表示にしてあり、
月計だけ見える状態でブックの保護をパスワード付きでかけてあります。
校閲→ブックの保護→ブックの保護の解除でパスワード入力をしたタイミングで、
1日から31日までのシートがまとめて再表示されるようにしたいです。
どうすればできるでしょうか? 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 はい・
【4 VBAでの回答の可否】 可
A列に対して同じ行のB,C,Dに日時が入力されると赤、黄色、緑とセルの色をつけたいのですが、最終行まで適用する方法はありませんか?よろしくお願いします。 >>215
それは無理
ボタンを押したら保護解除して表示ってのなら行ける
ってか作った
http://fast-uploader.com/file/7098800688223/
>>216
条件付き書式なら
A:A
みたいに指定すればA列全てに設定できる >>217
編集者は決まっているので誰でも開けるようにするのはダメです。
その「表示」ボタンを押したらパスワード認証のポップがでて開く…とか
ブックの保護を解除して、はじめて「表示」ボタンが活性化する…とかはできませんか? >>218
>ブックの保護を解除して、はじめて「表示」ボタンが活性化する
はめんどいしよく分からん動作だな
>その「表示」ボタンを押したらパスワード認証のポップがでて開く
こんな漢字に書き換えて
Sub ボタン1_Click()
On Error GoTo err
Sheets("月計").Select
ActiveWorkbook.Unprotect Password:=InputBox("パスを入力")
For Each シート In ThisWorkbook.Worksheets
If Not (シート Is ActiveSheet) Then
シート.Visible = True
End If
Next
Exit Sub
err:
MsgBox ("パスが違うよ")
End Sub >>219
できました。これは凄い!
ありがとうございました。 >>221
標準モジュールの
ActiveWorkbook.Unprotect Password:="foo" 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 はい・
【4 VBAでの回答の可否】 可
行を軸に一番右のセルに入力された日時の列1行目をA列に反映させたいのですが、
IFだと4つまででした。わかる方がいらしたら教えていただきたく。
A列に対して同じ行のB,C,Dに日時が入力されると赤、黄色、緑とセルの色をつけることができたのですが。
http://fast-uploader.com/file/7098875089323/ >>223
A2=OFFSET($I$1,0,MAX((I2<>"")*1,(J2<>"")*2,(K2<>"")*3,
(L2<>"")*4,(M2<>"")*5,(N2<>"")*6,(O2<>"")*7,(P2<>"")*8,(Q2<>"")*9,(R2<>"")*10,(S2<>"")*11)-1)
うーん >>225
>>226
回答ありがとうございます。
誤 A列に対して同じ行のB,C,Dに日時が入力されると赤、黄色、緑とセルの色をつけることができたのですが。
正 B列に対して同じ行のIから,Sに日時が入力されるとセルの色をつけることができたのですが。
問題はオートフィルで最下行まで埋めると、結構なサイズになってしまうことです。
幸い、このファイルは台帳なので受付番号は入力用ファイルからオートフィルで作成して取得する
方法にしています。この方法なら1行ずつ増えるからしばらくは持ちこたえるかと。
2行目のセルがおかしいのは割愛。原因がわからなかった。 初歩的な質問で申し訳ないです。
データの抽出についてなんですが
Aさん
Bさん
Cさん
Dさん
・
・
・
抽出したい人リスト
Bさん
Dさん
・
・
・
というように指定したリストの人のみを抽出する方法を教えて頂けないでしょうか?
数人だとフィルタかけて終わりなのですが、上記のリストが100人単位であります、、、 228です!
ありがとうございます!上手くできました!
勉強になりました。 すみませんご興味本位のご質問なんですが
Excelのご関数で引き算ってありますでしょうか?
A1セルからB1セルをご減算するのって
普通=A1-B1って書きますが
たとえば=HIKIZANN(A1,B1)みたいな
そんなご関数はあったりしませんか? >>234
ないですけど、マクロ(VBA)で
Function Hikizan(x, y)
Hikizan = x - y
End Function
を一つ作っておけば
あなたの希望は叶います。 ただし
ごヘルスにご入店するのにご紹介所をご経由するようなものでごじゃります >237
視点はいいのになんで下ネタに走るかな、勿体無い >>236
このFunctionは、SUM()とかの普通の関数と同様に、セルの式で使えるのですか? 調べても分からなかった池沼なんですが、ip表示がONになっている
5chの特定のスレから特定IPだけを抽出して、更に書き込み時間のデータを抽出することできませんか?
書き込み時間帯と使う言葉の傾向をピボットで分析したいけど抽出方法を見いだせない。。。 テンプレ読んでない池沼だった
【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2013
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可 >>243
スクレイピング、構文解析、形態素解析
の技術が必要
技術的にはできるけど目的がしょーもないのでやりたくないな
あと、vbaじゃなくてphpとdbでやったほうが良い
形態素解析はmecabを使うと良い
後、2chのレスで遊ぶ時はdatファイルをDLすると良いぞ
これなら手作業でも気合でなんとかなるだろう 父は10年前できるExcel2003で使い方覚えたそうだ
win10になってExcel for オフィス365 というバージョン使ってるんだができるエクセる365は見つからなかった
どの本を買えばいいか教えてください 【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可
https://oshiete.goo.ne.jp/qa/6668716.html
これをサンプルに以下の条件の工数報告を作りたいのですが、
8:00から17:00では12:00から13:00まで休憩
17:00から21:00では0:30の休憩
とすべく
C2=MAX(MIN("12:00",B2),"8:00")-MIN("12:00",MAX("8:00",A2))
D2=MAX(MIN("17:00",B2),"13:00")-MIN("17:00",MAX("13:00",A2))
E2=MAX(MIN("21:00",B2),"17:00")-MIN("21:00",MAX("17:00",A2))
F2=B2-A2
G2=SUM(C2:E2)
H2=F2-SUM(C2:E2)
としたのですが、17:00から21:00では0:30の休憩ができませんでした。
http://fast-uploader.com/file/7099058750582/
だれかたすけてください。よろしくおねがいします。 >>246
とりあえず最新のExcel
Excel365があるわけでなく
365はサービスの名前なので、そこで最新のExcelが提供される。 >>247
こうかな?
D2=IF(AND(A2<="12:00"*1,"13:00"*1<=B2),"1:00"*1,0)+IF("17:30"*1<=B2,"0:30"*1,0) >>249
基本的な機能は大分前から変わってない
ただ見た目が2013で大幅に変わったから、それ以降ならなんでもいいよ
中古ならタダみたいな値段で手に入ると思う >>245
ありがとうござい茄子!!!ぐぐってみます >>251
俺もそう思って中古を探してみたんだけど、意外と値段が落ちてないんだよな 中古とかあるのか?
一度ライセンス番号使ったら終わりと思うが ブックオフの安いのは数年前にはゴロゴロしてたな
特にVBA関係は古いけど新品みたいにキレイなのが100円とか >>250
ありがとうございました。
あの、質問があります。なんで時刻に*1するのでしょうか? 文字列から数値に変換するため +0でも可
VALUE関数の代わりみたいなもの >>246
Microsoft Office Specialist Microsoft Excel 2016 対策テキスト
その親父ならきっといける 【Excelのバージョン 】 Excel 2003
ユーザー設定で、↓の赤丸で囲んでる区切り線は
どうやって設定すればいいのでしょうか?
tps://dotup.org/uploda/dotup.org1705854.jpg.html 11.30という数値をコピーしてきて貼り付けた時.30の0を省略せずに貼り付けて、表示する場合はどうしたらいいの? >>265
・書式設定で文字列にしてから貼り付ける。ただしこの場合計算しづらくなることがある
・貼り付けてから書式設定の小数以下の数値を変更する
>>264
2003は厳しいなぁ。もう覚えてないや ■ このスレッドは過去ログ倉庫に格納されています