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/ >>396 改行は嫌いだけどこういう返しは好きだよw まぁヤリ過ぎんようにな >>397 >計算結果が出るのはマクロを実行したタイミングでしょうか? 基本的にはそう vlookupを使わずに単純にマクロで計算する場合、任意のタイミング一度だけ ただこれだと結構不便なので以下のように発展させることもできる >セルに入力したタイミングで結果が出ますでしょうか? イベントという概念がある ワークしートの内容が変わった時に発動するマクロというものを作ることが出来る https://docs.microsoft.com/ja-jp/office/vba/api/excel.worksheet.change > 個人的には、「セルに入力したタイミングで数式を最終行まで入力し直す」 というマクロにして入力以外何もさせないって形が好き 昨日資格は不要と聞きましたが、テキストなどに沿ってExcelを学んでいきたいと思います。FOMシリーズはどうでしょうか? >>400 何でも良いよ \1で売ってるからさっさと買って勉強しなされ http://amzn.asia/d/822zSeQ 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 できれば否 商品毎に最新日の行にTRIE判定をつけたいのですが どのような計算式を書けばいいのでしょうか 下記のイメージです よろしくお願いいたします。 # 商品群 ___DATE__ 最新判定 1 みかん 2018/3/5 2 りんご 2018/7/3 TRUE 3 いちご 2018/1/2 4 みかん 2018/6/5 TRUE 5 りんご 2018/4/4 6 いちご 2018/9/8 TRUE 7 みかん 2018/5/3 >>402 https://i.imgur.com/deMb7Ru.png シンプルだけどDAYS関数を使ってデータ更新日からの日数を求めるのはどうじゃろ。 >>403 商品毎って書いてるから、みかんの最新日、りんごの最新日・・・を求めていきたいんだと思うよ 商品の種類が多くなければIFで商品別作業列に日付を参照しmaxとればいい 作業列は判定列より右に作り非表示にしておく sumproduct でやりゃいいじゃん ここ苦手な人多いの? 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい・ 【4 VBAでの回答の可否】 可 VBでpdfを作成させていますが、チェックボックスが黒く塗りつぶされるユーザーがいます。プロパティでAcrobatのバージョンが古いのはわかりましたが、新しくする方法がわかりません。原因は違うかもしれませんが。知恵を拝借したく。よろしくお願いします。 >>402 =SUMPRODUCT(MAX((B:B)*(A:A=A1)))=B1 http://www.excel.studio-kazu.jp/kw/20060804094722.html sumproductはどうも苦手だわ ちなみに検索前の式 =SUMPRODUCT(IF(A:A=A1,MAX(B:B,B1,0)*(1))) 全然分かってないw >>408 多い 見通しも悪いし作業列使った方が早いしから、使う場面が本当に無いんだよね 俺はsumproductと配列はすごく使うな 逆に作業列は辿るのが大変でかえってわかりづらい 関数型言語みたいに副作用なく完結するのがいい >>408 さっさとsumproduct使った回答すればいいだけなのに sumproductは意図が分かりにくいだけじゃなくてクソ重いから使われないんじゃないの 最初から配列で演算するのが前提ならいいけど条件式替わりとかだと特にクソ 【悔日企業ヘイトバンク】 父は犬、兄は黒人、白戸は白洲、私たちはあのCMを見るたびに侮辱されていた http://rosie.5ch.net/test/read.cgi/liveplus/1545098183/l50 I T 業 界 の B T S 問 題 浮 上 ! >>402 D2 =MAX(INDEX(($B$2:$B$8=B2)*$C$2:$C$8,0))=C2 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 従業員の連続残業日数をカウントしたいと考えています。 残業した日を1、定時退社を0と入力までは行ったのですが新たな作業列を作らずに1つのセル内でカウントする方法をご指南お願いします。 例 A列は氏名、B列以降は日にちとして横方向にカレンダーを作成しています 山田 110011100110 (連続残業回数として4を反映させたい) 佐藤111001110011(連続残業回数として5を反映させたい) 田中000001100000(連続残業回数として1を反映させたい) 山本010011100000(連続残業回数として2を反映させたい) 以上、宜しくお願い致します。 >>404 勘違いしてた…はずかし。 そして他の人が既に修正してくれてた。 >>420 N1="0"&B1&C1&D1&E1&F1&G1&H1&I1&J1&K1&L1&M1&"0" O1=LEN(N1)-LEN(SUBSTITUTE(N1,"0110","010")) +(LEN(N1)-LEN(SUBSTITUTE(N1,"01110","010"))) +(LEN(N1)-LEN(SUBSTITUTE(N1,"011110","010"))) とりあえず12日分で上記を考えたけど、余裕で文字数オーバーになるな 無理じゃね O1=LEN(N1)-LEN(SUBSTITUTE(N1,"0110","010")) +(LEN(N1)-LEN(SUBSTITUTE(N1,"01110","010"))) +(LEN(N1)-LEN(SUBSTITUTE(N1,"011110","010"))) これは「1111」までしか対応していないので、「11・・・・11」と31連勤分まで作成するという意味ね 気になったからベンチ取ったら>>411 より>>418 のほうが処理が重かった indexでセルに再アクセスするぶん時間かかるということかな 違う(^^; =(b2+c2=2)+(c2+d2=2)+・・・ >>420 =LEN(SUBSTITUTE(SUBSTITUTE("0"&B1&C1&D1&E1&F1&G1&H1&I1&J1&K1&L1&M1,"01",""),"0","")) あーそうか01を取って残りをそのままlen()に突っ込むだけで終わりだったのか しゅ、しゅごい・・・ >>422 >>428 >>423 皆様ありがとうございます。 明日会社で入力してみます。 >>420 答え出たみたいだけどせっかくだから話題のsumproductで =sumproduct(((B1:L1+C1:M1)=2)*1) 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel10 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 絶対アドレスでhoge\Aというフォルダに 0001.hoge-2000.hogeと連番でファイルが有ります。 エクセルでB列に0001から2000までファイル名でリストが並んでいて、 このBのファイル名をクリックしたら該当ファイルを開けるようにしたい。 ハイパーリンクでやろうとしましたが、数が多いので時間がかかります。 ハイパーリンクにこだわらなくても、目的を果たせればいいので 一気に設定できるやり方は無いでしょうか? *B列の記述「ファイル名(拡張子除く番号のみ)」は変更できません どなたかご教授お願いいたします >>434 hyperlink関数は? =HYPERLINK("C:\Users\a\Desktop\"&B1) >>412 ありがとうございます。アクロバットのインストールで解決した人としなかった人がいました。解決しなかったのは、ファイルの種類をpdfにして、オプションのpdfのオプション「ISO 19005-1に準拠」にチェックが入っていました。なぜここにチェックが入っていたかは不明ですが。 >>432 これって、データがどのように入っていることを 前提にしてるの? セル縦に連続3つの合計を、起点を下にずらしながら計算して1番大きかった3つのセルを罫線で囲み、その合計値を取得したい >>439 作業列でいいんじゃね b1=sum(a1:a3) を下にコピペ 罫線は上記同様で条件付き書式 c1=max(b:b) 俺の知ってるExcelじゃない。。なんでそんなに複雑な事が分かるんだ?慣れ? >>319 です。 Sub 入金取り込み() Dim meibo As Long Dim nyuukin As Long Dim ws1 As Worksheet Dim ws2 As Worksheet Dim cmax As Long Set ws1 = Worksheets("名簿") Set ws2 = Worksheets("入金") cmax = ws2.Range("A65536").End(xlUp).Row For meibo = 2 To 2000 For nyuukin = 2 To cmax If ws2.Range("B" & nyuukin).Value = ws1.Range("A" & meibo).Value Then ws1.Range("C" & meibo).Value = ws2.Range("C" & nyuukin).Value Exit For End If Next Next End Sub いろんなパターンがあるエラーをうまくはじく方法が思いつかなかったので ひとつ入力するたびに選択するようなダイアログにしたいと思うのですが ( [OK] [スキップ] [キャンセル] のような感じ) 今の方法であってるのでしょうか? 根本的に作り直しですか? >>441 慣れ なんだかんだで15年やってるからねぇ >>442 正解は無い 10年に一回ぐらいのエラーならそれでも全然問題はない 毎回100箇所ぐらいエラーがあるなら実用的とは言い難い エラー件数が大量になるかもしれないなら エラー出力シート用意してリスト出力しちゃうな、自分は で、最後にエラー件数をメッセージ出す >>442 何万回もループさせるのにいちいちダイアログ出すの? 最低限でも日付や金額が非常識な値じゃない事を関数等でチェックすべきじゃないの? 非常識な値ならスキップしセルに色を付けるとかで表示しあとで人が訂正するとか vbaあるある for .... for ... if errCount >= 100 then if msgbox("もう100エラー超えたよ、データおかしくない?まだ継続する?",vbYesno+vbcritical) = vbcancel then exit for end if errCount=0 end if next next これだと何万回もループになるんですか? せいぜい100個ちょっとを2000行のリストから探して入力していく作業です。 毎回のエラーは数個です。 エラー内容としてはすでに入力されている場合や該当のIDがない場合や 明らかな金額間違いなどを想定してます。 >100個ちょっとを2000行のリストから探して あのー超単純計算で20万回なんですけどー・・・ >毎回のエラーは数個です。 これがダイアログで許容できる運用かどうかだよ それは我々には分からない 個人的には絶対にやらない 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel10 【3 VBAが使えるか .】 入門中 【4 VBAでの回答の可否】 可 A列に、ある店舗での客ごとの買物の金額が並んでいるとします。 そのお店は、どの商品もすべて、単価1000円のものしかありません。 その金額から判断し、B列に購入数は何個かという値、C列にはAに含まれている 消費税額を自動で入れていきたいです。税率8パーセントとは限らず、将来15パーセント まで1パーセント刻みであがったときでも、常に税率を推測して内税額を算出するように したいです。 単価が固定、税率は8パー以上15以下、 この条件で、頭のいい人なら推定できる式を考え られるのではないでしょうか?教えてください。 関数でもVBAコードでもかまいません。 逆に、「どんな天才でもそんな推定は不可能である」ならそう教えてください。 よろしくお願いします。 消費税は切り上げ切り捨て、四捨五入が考えられる b列はa列割る1000 >>447 >>447 簡単な入力ミス判定の一例 すでに入力されている場合 If 該当セルValue <> "" Then 該当のIDがない場合 If 該当セルValue = "" Then 明らかな金額間違い If IsNumeric(s) = True Then のあと金額範囲なども出来る 詳細設定をするには設定シートを設けたほうが変更時に便利だろう 日付、金額等の上下限 有効なID一覧等 >>449 税込み金額から算出不能な金額があったはず 販売が1個の時にa列に入るのは1080円か1000円か a列それぞれの行で消費税率が違う場合はあるのか 作業列(セル)を使えるのか このあたりの条件は? >>449 全て同一日の情報でしょうかね。 そうでない場合は増税前か増税後が混じるので 購入情報側と消費税側の両者に日付がないといけないですね。 もし同一日なら、消費税率というセルが1つあれば、それを 参照して計算すればいい。変わった時には消費税セルを変更するだけ。 ただしその場合であっても、例の(話題になっている)軽減税率対象商品が ある場合は、対象商品かそうでないかの識別が必要になるので 客ごとの合算ではなく、客&軽減税率対象ごとに合算にする形にしておかないと いけないですね。 いやだから>>449 は無理だって 税込94円の商品があると税抜金額は求められない 後、先に言っておくと経理上は問題ない >>456 単価1000円の物しかないし、推定だから剰余が0になる 税率を複数挙げても良いのでは 軽減税率ね〜。新聞社も甘い! ここと関係ないけど消費増税延期も選択肢にあったのだろうが 反対する野党もない。今になって参院選目的に反対しても遅いわ。 >>449 軽減税率があるから提示された条件ではどんな天才でも不可能 解が複数存在するものが出てくる もし将来的にも永久に軽減税率を考えなくていいなら関数で簡単に計算できることはできるけど >>461 店の商品がすべて同一単価だとしても商品の一部に軽減税率がかかる可能性があれば無理ってこと? で、そんな軽減税率なんか考えなくていいとすれば、関数で簡単に出せるの? どうやって? 税率がいくらかわからないのに、絶対に出せる? 取引の日付が分かれば税率は出せるけど、 返品の場合処理がまた複雑になる 返品とか軽減税率とか、書いてない概念もちだしてるのへんじゃね? >>464 別に 後から言われるのがめんどい 無ければ無いと答えてくれればそれで良い >>449 https://dotup.org/uploda/dotup.org1722898.zip.html やっぱり割戻し無理じゃねーかクソが 税率10%の時、1000円の原価が不定になる まぁ大体でいいなら上のファイルで行ける >>464 ってか変と思うならさっさと答えたら >>464 >>449 が現実の話かどうかはわからんけど、現実の話ならありがちでメチャ面倒なのでこの手の業務に携わったことあるとここらへんが気になるのはよくわかる >>462 461に書いたことをそのまま訊かれても困るけど、そのとおりだよ 与えられた条件だけでいいなら シートで単純に書けるけど それでいいってことなんじゃないのかな。 でも、Excel初めてじゃないだろうしと考えると・・・・ なんでそんな質問するんだろうとも思うし・・・ 釣り師は後出しするからな あれじゃ釣り師と思われてもしかたない 10800で割り切れる → 消費税8パーセントと推定し計算 10900で割り切れる → 〃 9 〃 11000で割り切れる → 〃 10 〃 11100で割り切れる → 〃 11 〃 こんな感じでやるしかないか。 8から15パーセントの幅なら、複数の値で割り切れちゃうことないんじゃね? >>473 その考え方はNG 割り切れない値段設定は普通にあるぞ >>474 単価10000円統一なら大丈夫じゃないかな。 割り切れないってことはありえない。 問題は、割り切れるパターンが複数ある場合。それもなさそうか。 >>449 461だけど、訂正 軽減税率なしでも絶対に分かるのは30240円未満まで 30240円の場合には税率と個数が一意に定まらないから、これは天才でも不可能 鈴木1,鈴木1 鈴木2,鈴木2 . . 鈴木100,鈴木100 このように二つの数字が入ったものを両方連番に一気にやるやりかたないですか >>478 二個一変だとオートフィルで無理っぽいね 一個ずつだといけるんだけど ="鈴木"&ROW()&",鈴木"&ROW() をオートフィルするしか無いみたい >>476 30240円だと、税率8%確定だと思うけど。 1080円から、1090.、1100、、、1150まで、割り切れるのは1080だけだぞ? あほか? 会社経理での消費税の扱いは、 仕入れ(仮払い)消費税でも売上(仮受け)消費税でも、 端数を切り捨てるか、 四捨五入するか、 一貫していればOKだと、 税務署の見解出てなかったっけ? 【1 OSの種類 .】 Windows 10 pro 【2 Excelのバージョン 】 Excel 2016 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 Excell 2016でウィンドウをドラッグすると、動作が遅延して ヌル〜っとした気持ち悪い動きになるんだけど、これって直す方法ない? Wordとか他のソフトのウィンドウは普通に動く Core i9 9900K RTX 2080Ti (ドライバーver 417.35) メモリ 64GB (16GBx4) >>478 =A1+B1 でオートフィル 連番したいセルを一括選択して置換 =A →鈴木 +B →,鈴木 いじょ >>481 12%で割りきれるだろ わり算勉強してからこのスレに来いよ、低脳 >>481 電卓持ってないんか? 300240÷0.8=278000 300240÷1.2=250200 私はあほなんだろう。 やり取り見ていて、いまだ、何をやりたいのかが 理解できていない。 分り易くおせーてください >>449 1.08×1.09×1,000=11,772,000 当たり前だが8%でも9%でも割り切れるから、推定は不可能 >>494 「税込み金額しか記録しないシステムを作ってしまいました。 でも、購入品はすべて税抜き価格1000円のものばかりなので、 後からでも購入金額のうち、本体価格分と消費税分を計算で 分けることできるんじゃないかと思うんです」 ↑ こういうこと ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる