Excel総合相談所 131
■ このスレッドは過去ログ倉庫に格納されています
▼━質問テンプレ (出来れば使ってね) ━━━ 【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 1シート目がリストで、2シート目が納品書1枚分ということ? っていうか、2枚目が自動生成なら、そこに入力はしないのでは? シート1で何行入れようがシート2でちゃんと納品書の明細に収まる ような「自動」 かどうかが判らんが シート1に納品書の連番列を追加すりゃいい 追番 が一般的な用語かどうか知らん 納品書番号とか連番とかのがググり易い気がすr 一ヶ月で連番、得意先ごとに連番、担当ごとに連番 とかいろいろあるだろうが 工夫 >>95 シート1から作り直すというか、項目を追加して修正しないとダメだと思います。 まずシート1にその月の連番になる部分を、列として作る。その例でいうと02とか、03とか。 そこは関数で自動でできると思うけど。 で、それを元に納品書Noみたいなの作る。 それを、シート2にvlookup関数等で反映させる。 >>96 御指摘の通り、2シート目で納品書が自動で切る状態です。 ただ、そうした設定を設けたい、目で見ることができるようにならないかということです。 >>97 伝票番号はありますが、 その番号とは別に、設定したいのです。 うちの伝票番号は、納品月などが一目瞭然というものではないので、、、 ちゃんと参照とかしてるからExcelの機能を発揮している 世の中にはただのワープロとしてしか使われてない例が山程 せっかくデータ入力して印刷するだけじゃん データ分析もしてないし 送料計算とかも無いし >>95 シート1の1行目は項目名 納品日がC列、会社名がD列であると仮定して シート1の使っていない列に追加 =SUMPRODUCT(((MONTH(C$2:C2)=MONTH(C2))*1)*(D$2:D2=D2)) シート2へは他項目と同じように参照させればいい >>104 ごめん、まちがって途中の式コピペったw こっちね =TEXT($C2,"yymmdd-")&TEXT(SUMPRODUCT(((MONTH($C$2:$C2)=MONTH($C2))*1)*($D$2:$D2=$D2)),"00") なんでy全角になってんだ・・・orz 気持ち悪いので半角にしといてください ・・・最近色々抜けてるな 受領書というシートのA9の値をAF列の最終行までオートフィルしたいのですが ↓のコードだとエラーになります。正しいコードをおしえてください。 Sub MacroA1() Sheets("受領書").Select i = Cells(Rows.Count, 1).End(xlUp).Row Range("A9").Select Selection.AutoFill Destination:=Range("A9:A" & i) End Sub 関数の使い方に関する質問です https://dotup.org/uploda/dotup.org1519000.jpg 人物A〜Iにパラメータα〜εがあるとして そこからパラメータごとに一人を選び合算した辺りをした部分に算出したいと考えています 各項目の色付けは手動で行うとして 青い部分は2倍で緑は等倍したもので自動的に計算してくれるようにしたいですが(例えば項目αなら550*2+289+255+281+284) 関数をどう使えばいいか教えて頂けないでしょうか? >>107 今のコードだと、iは1列目の最終行なので、A9のrow、つまり9になってる。 ってことは、A9をA9までオートフィルなので、エラーが出てると思われます。 ありがとうございます VBAはなしで考えているのでSumproductを使うつもりですが まずセルの色から数値を当てはめる部分って自動化できないでしょうか? >>105 ありがとうございます。 仮定条件を、私の方で修正しつつやってみたところ、 4/6納品 180406-01 となりました。 求めてる形です。 ただ、 4/7納品 180407-01 となってしまいます。 ここを180407-02 4/15納品を、180415-03 という形にしたいのが希望です。 ぜひお願いします。 >>114 ん?会社名が一致した場合だけカウント増やすんじゃないの? 追記です。 あるいは1804-01 1804-02 ・・ という形状でもいいのではと思います。 お願いばかりでスイマセン。 >>115 いえ、4月に動かしたものなら、 それに対して、追番という形です 5月になれば、 1805-01、1805-02・・ という感じです。 説明不足でスイマセン。 >>117 今ちょっとすぐにはExcel触れなくて、スマホからだから動かなかったらごめんだけど、会社名ごとのカウントじゃないなら、↓これでいけると思う =TEXT($C2,"yymmdd-")&TEXT(SUMPRODUCT(((MONTH($C$2:$C2)=MONTH($C2))*1)),"00") 日付部分がいらないなら"yymmdd-"のddを削って、 "yymm-"にすればいいと思うよ ブックが1つで、全ての取り引きをそれで管理してるのか、 取引先毎にファイルを分けてるかすら判らんのだけど、 会社名という項目がある以上、多分全部混合なのだろうと で、番号を追加して欲しいのは特定の納入先だけだろうから、 それにマッチしたら、その月の中で何番目のデータかを計算すればいい ちなみに>>105 のは、同じ月で同じ会社名が複数あった場合に 180406-01 180407-02 ・・・とカウントされる様にしてあったと思う 他社に渡すなら、他の会社への納品回数まで教えることになるから、自分の感覚では「それは問題だろう」と同じ月で同じ会社だった場合のみ増えるようにしておいたんだけど、余計だったみたいだね >>119 >その月の中で何番目のデータかを計算すればいい ん?それが↓この部分なんだけど SUMPRODUCT(((MONTH($C$2:$C2)=MONTH($C2))*1)) もっとスマートな方法あるなら私も教えて欲しい パッと思いついたのはこんなもんだったw >>112 列AFの最終行にするにはどうしたらよいでしょうか >>122 A9の値をAFの最終行まで、では意味が分からないです。 図をアップするか、例をあげるかしてください。 >>118-121 本当にありがとうございます。 あんまり詳細は言えないのですが、 私も4月から異動してきて、そのファイルを使い始めたばかりです。 ある商品を、購入した客の在庫をこちらで預かり、 客からの申し出で、指定先に収めてる感じです。 該当する部分を指定してPDF化して納品書をつくるという感じです。 なので、月ごとの出庫で管理したいのです。 でも、ファイルが良い作りかと問われれば、疑問は感じます。 そこは慣れてきたら手入れしたいと思います。 家にファイルは持ってこれないので、また週明けに試してみます。 ホントに感謝します。 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2013 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 A〜D列まで集計用のテキストデータが入っています。 各列の行数はバラバラでデータがセットされる度に変動します。 この時、E列にA〜D列までの値を縦に積み重ねるように並べたいのですがどうすれば良いでしょうか? 自動化したいので関数でお願いします。 ダイナミックにやれる方法あるんだろうか ボタンを押してマクロ起動するとそのように並ぶ、とかならできるだろうけど Excel超初心者です。 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2013 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 以下のような簡単な納品書を作りたいのですが (手書きでごめんなさい。) https://imgur.com/a/MXBf82k 項目数が変動しても、表下部の小計、消費税、合計額を自動で算出することは出来ますか? 自分の知識では=C1*D1や、=sum(E1:E5)といったような セルごとの指定しかわからないのです。。 この表を使う人は自分以上にエクセルはまったく分からず、 とにかく金額と数量を入力したら、すべて自動で計算出来る方法がないか?と言われまして 途方に暮れております。 なんとか助け舟を出していただけますでしょうか? どうか、宜しくお願いします。 >>127 想定される行数よりも多めの行を作っておけば良い SUMなら空欄が範囲に入っていても大丈夫だ >>125 オレ頭悪いからよー IFとINDIRECTでムチャクチャにやって計算式組んでみたぜー ただしクッソ重かったりしてPCが1時間くらい止まったり 煙を吐いて爆発したりしても知らねーからなァー あと勝手で悪いが作業用としてF1、G1、H1、I1セルも使わせてもらったぜ! 使いたくねーならE列の計算式を改変しやがれッ まず最初に F1セルには=COUNTA(A:A) G1セルには=COUNTA(B:B) H1セルには=COUNTA(C:C) I1セルには=COUNTA(D:D) と入力しといてくれ これはよーするに各列のケツがどこか知りたいってだけだ まさかとは思うが途中にブランクセルとか入ってねーよなァー?んな話は聞いてねーからなッ あとはE列全部に・・・ おっと「全部」ってのは冗談だからなッ! どーせA〜D列なんて最大でも100とか程度なんだろ? だったらE1〜E400まででいい・・・4倍の数だ・・・ 本当にE列全部とかしたら何が起きても知らんからなッ 話を戻して・・・それならE1〜E400までに以下のクソ長い計算式を入れろ って貼り付けたら行永杉って怒られたわ 途中で一つ改行するけどつなぎあわせてくれ =IF(ROW()<=$F$1,INDIRECT("A"&ROW()),IF(ROW()<=($F$1+$G$1),INDIRECT("B"&ROW()-$F$1), IF(ROW()<=($F$1+$G$1+$H$1),INDIRECT("C"&ROW()-$F$1-$G$1),IF(ROW()<=($F$1+$G$1+$H$1+$I$1),INDIRECT("D"&ROW()-$F$1-$G$1-$H$1),"")))) 話は以上だぜ 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Exce2013 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 初心者です。 例えば、1aや100aと入力したとします。 それをa1やa100と入力文字の配置を入れ替えたりする事はできますか? 別のセルに表示なら出来るかもな その問いだけじゃ何がしたいのかわからんけど >>133 データ入力間違えたので、位置変えたいんです abcdを cdabという風に列ごと >>127 すでにレス付いてるように余分に空白行入れておくのが簡単。 空白行を非表示にしてもそこに数値が入っていると、sum関数だと加算対象になるので注意。 あとはテーブルを使っても完璧ではないけど、ある程度できるかも。 なお、テーブルでもそうでなくても、行を挿入するときにデータの一番下に入れずにその上に入れれば、Sumの対象になる。 例えば=sum(B2:B7)となってて、6行目と7行目の間に行挿入すると、sum(B2:B8)となるけど、7行目の下に追加するとそのまま。 >>132 ルールが不明。 アルファベットはaと決まってて、aと数値を入れ替えたいのか、 文字列と数値を入れ替えたいのか。 あとは、そのセル自体のデータを変えたいなら、関数だけでは無理。 関数と形式を選択してコピーなどを組み合わせればできる。 >>127 『小計』『税』『合計』をもともと書いておくのなら、 >>130 、>>136 さんの言うように、あらかじめ小計より上のセルまでを指定しておけばいい んで、いらない行の部分は、Excelの数字が書いてある部分を選択して行ごと削除すればいい。 そうしたら自動的にSUMの範囲も削除した行の分は減らしてくれるよ。 もしその担当の人が、行ごと削除とかうまくできないだとか怖いとか言うけど 都度『小計』『税』『合計』の文字をD列に書いてくれるっていうなら、 ↓E1に張り付けて、使いそうな行の範囲までオートフィルで下までコピーすればいい。 ※長すぎるために改行してある部分は、繋げてね。 ■結果のみVer. =IF(D1="","",IF(D1="小計",SUM(INDIRECT("E$1:E"&ROW()-1)),IF(D1="税",ROUND(INDEX(INDIRECT("E$1:E"&ROW()-1),MATCH("小計",D:D))*0.08,0) ,IF(D1="合計",ROUND(INDEX(INDIRECT("E$1:E"&ROW()-1),MATCH("小計",D:D))*1.08,0),C1*D1)))) ■おせっかいVer. =IF(D1="","",IF(D1="小計",SUM(INDIRECT("E$1:E"&ROW()-1)),IFERROR(IF(D1="税",ROUND(INDEX(INDIRECT("E$1:E"&ROW()-1),MATCH("小計",D:D))*0.08,0) ,IF(D1="合計",ROUND(INDEX(INDIRECT("E$1:E"&ROW()-1),MATCH("小計",D:D))*1.08,0),C1*D1)),"D列内に『小計』『税』『合計』の順で記入してください。"))) >>131 >>42 はあなたの事でしたかw(口調に関してね) まぁでも式は、全部関数でやって可変となる作業列を減らそうとするとそんな感じに長くもなるよね・・・。 一旦作業列で通し番号つけてOFFSETでってのも考えたけど、作業列も可変になってしまうし。 >>127 書き忘れたけど、>>138 は君のところの税の端数処理ルールがわからなかったから 小数点以下は四捨五入するようにしておいたけど、会社のルールに応じて 『ROUND』の部分を全部、それぞれ『ROUNDUP』や『ROUNDDOWN』に置換してね。 >>137 はいその通りです。 文字列+数値で数値を前に移動したいんです。 A1,A2,A3...とかを1A,2A,3A...と >>132 なんやよーわからんけどパーツを置いといたるわ ・RIGHT関数 参照セル内の文字を右端から数えてって何文字分か取り出す =RIGHT(A1,1) ならA1セルの文字の一番右端の1文字を取り出す A1にa100と書いてあったなら0 =RIGHT(A1,3) ならA1セルの文字の右から3文字分を取り出す A1にa100と書いてあったなら100 ・Left関数 参照セル内の・・・てゆーか上の関数の左から版 =LEFT(A1,1) ならA1セルの文字の一番左端の1文字を取り出す A1にa100と書いてあったならa =LEFT(A1,3) ならA1セルの文字の左から3文字分を取り出す A1にa100と書いてあったならa10 ・LEN関数 参照セルの文字数を調べる A1にa100と書いてあったなら4文字だから =LEN(A1) とすれば4が返る $str =~ s/([a-z]+)(\d+)/\2\1/i みたいに書ければ一発なのにな 一旦全コピーしてテキストエディタに貼り付けて処理して戻す、 みたいなことをすれば簡単に解決する場合も多い excelの中だけで完結させるのは殆どの場合コストが高いので、 繰り返し同じことをする場合以外は、いかにexcelの外で解決できるかを考えた方が楽 ここ2、3日は、中級以上の回答者さんが何人か来てて楽しいな >>79 >>81 >>83 >>91 会社全体でbluetooth?で管理してます 管理者の人がいないんで、誰が出勤なのかわかりません。 なので、聞いてます。エクセル2010です。 親切なココの住人ならバイトのシフト組んでくれるよ まずはスタッフの住所、氏名、TELは? iPad2017に入金してEXCELの課金をするために EXCELのサインインタブ → アカウントがない場合アカウントを作成しましょう を選択してメアドとパスワードと携帯電話番号とSMSコードを入れても「無効なコード」で弾かれます ネットカフェの危ないPCでないとマイクロソフトアカウントは作れないのでしょうか? 146ですけど自己解決しました Safariでマイクロソフト公式アカウント作成ページで作成 アプリ上からは作成不可能みたいですね >>127 の質問に答えてくださった皆様、 本当にありがとうございました! 一晩じゅういろいろなサイトを見て勉強して ようやくなんとなく頭に入ってきました。 で、皆様のコメントも少しずつ理解出来るように。。 いろいろ試してみます! >>149 おーその意気だー! 成長する気がある人なら、すぐにある程度は習得できると思うよ、がんばってね。 その過程で、ググりまくってもわからない事が出てきた時は、気長に待てるならまたここで聞くといいw >>145 馬鹿にしないでください。 私は真剣に聞いてます。教えてください。 暇じゃないんです 緊急なんです 明日から仕事です >>144 >>76 の件なら、他の人も何度も行っている様に 書いている内容では情報が足りなすぎて手のつけようがないんだよ、マジで。 「●(伏字)×●(伏字)+●(伏字)という式があるんですが答えの数字を教えて下さい」 こんな事を聞かれてるレベルだから、誰も分かるわけがない ・現物のファイル、もしくはせめて個人情報だけ仮の値に変えたファイルのをどこかにアップロード ・具体的にどこをどう更新したいのかを事細かに伝える 上記をはっきりしてくれないと誰も答えようがない 釣りならそれでいいんだけどね サポート職経験してた身としては、実際に同じような質問が来た場合にどうしてあげるのがいいのか考えてる 上司に連絡つけるように指示すりゃ終わりだろ 連絡つかないなら上位上長なり人事なりに報告 担当の責務はそれで終わり まずエクエルを開くと、アルバイトのシフト表が出てきます。 現在、4月の一週目のままで更新が止まってます 最新のにしたいんです。 >>155 上司に連絡つけるように指示すりゃ終わりだろ 連絡つかないなら上位上長なり人事なりに報告って言うけど 行方不明なんです。上の人間もわからないって言ってました。 日本語でおk 僕たちは日本人なんだ 失礼だけど君の使ってるのは文法とかめちゃくちゃで僕らに伝わらない たぶん僕らの言葉も通じていないんだろう >>157 貴様の方が日本語を学習しろ! 私の書いてあることが理解できなんてな どこの大学出てる? 前提 担当者一人だけで管理しているエクセル作成のシフト表 担当者は音信不通 4月から更新されていない 要望 4月および5月以降のシフトを入力ないし反映させたい どうせこのレベルの質問来て一ヶ月解決できてないんならシフト表なんか紙で作ってるんだろうから手入力しろ >>158 高校数学の質問スレにりんご3つを割りたいんですけどどうすればいいですかぐらい意味のわからん質問してんだよ エスパーしようにも限度があるわ 「私の書いてあること」? 「できなんてな」とはどういう意味ですか? >>156 > 行方不明なんです。上の人間もわからないって言ってました。 なら警察に連絡しろよ... 鉛筆と定規で紙に書くのをオススメするよ これマジで Excelは 後にしてとりあえずはシフト表作んなよ Webに無償のスケジュール表、シフト表があるから それ使ったらどうだ。 それで無理なら手で書くのが現実だと思うぞ。 でも担当がいないと、誰がいつのシフトなのか判らないし 【1 OSの種類 .】 Windows 10 【2 Excelのバージョン 】 Excel 2016 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 非表示にしてあるワークシートの再表示の際、再表示ボックスが出ますが、そのボックス内での表示順を変更することってできますかね? カスタム順位で並べ替えられたら一番ありがたいですが、名前順などの縛りがあってもいいです。 >>166 残念だけど相談先間違ってると思うよ 周りにいる人と協力して、紙とペンと定規を用意して乗り切れ >>168 シートのindex順になっているみたい。つまり作成した順番 これ並び替えるのすげーめんどくさいから、再表示のリストをフォームかなにかで作ったほうが良いと思う >>171 なるほど、やっぱりそうなんですね 提示してくれた方法で検討してみます ありがとうございました 会社の所長が入力して、会社の他の管理者がそれを見ます 更新の仕方教えてください。 あと、なんでみなさん教えてくれないんですか? 所長もなぜか音信ふつうなのに、ほったらかしです 失踪してたら入力できるわけないだろ そんなアホしかいない会社だから所長は逃げたんだよ >>173 4月2週目以降のシフトを入力すれば更新されるよ あんたが皆から聞き取って入力しろ Excelの問題とは違う Outlookスレの回答催促オヤジ Excelスレの行方不明者捜索オヤジ 列Hの値が”集計”か”総計”以外の行は、行を削除して行間をつめる というコードを教えてください >>180 Sub FOO() If Not (Cells(1, 8) = "集計" Or Cells(1, 8) = "総計") Then Rows("1:1").Delete Shift:=xlUp End If End Sub 解釈の原因は解釈者自身の固定観念。解釈の自由には責任が伴う 言葉風紀世相の乱れはそう感じる人の心の乱れの自己投影。人は鏡 憤怒は一時の狂気、無知無能の自己証明。中途半端な知識主ほど激昂 「真実は一つ」は錯誤。執着する者ほど矛盾を体験(争い煩悩) 他人に不自由(制約)を与えれば己も不自由(不快)を得る 問題解決力の乏しい者ほど自己防衛の為に礼儀作法マナーを要求 情報分析力の低い者ほどデマ宗教フェイク疑似科学に感化洗脳 自己肯定感の欠けた者ほど「己の知見こそ全で真」に自己陶酔 人生経験の少ない者ほど嫌いキモイ怖いウザイ憎い想定外を体験 キリスト教は世界最大のカルト。聖書は史上最も売れているト本 全ては必然。偶然 奇跡 理不尽 不条理は思考停止 視野狭窄の産物 人生存在現象に元々意味価値理由目的義務使命はない 宗教民族領土貧困は争いの「原因」ではなく「口実動機言訳」 虐め差別犯罪テロ紛争は根絶可能。必要なのは適切十分な高度教育 体罰は指導力問題解決力の乏しい教育素人の独善甘え怠慢責任転嫁 死刑は民度の低い排他的集団リンチ殺人。「死ねば償える」は偽善 核武装論は人間不信と劣等感に苛まれた臆病な外交素人の精神安定剤 投票率低下は社会成熟の徴候。奇人変人の当選は議員数過多の証左 感情自己責任論 〜学校では教えない合理主義哲学〜 m9`・ω・) >>181 ありがとうございます。 2行目以降(1行目を除外)で"集計"と"総計"がなくなるまで繰り返すにはどうしたらよいですか >>183 fronext step-1で最終列から回す >>184 ↓だとうごきませんでした For i = Cells(Rows.Count, 8).End(xlUp).Row To 2 Step -1 If Not (Cells(i, 8) <> "集計" Or Cells(1, 8) = "総計") Then Rows("1:1").Delete Shift:=xlUp Next i >>181 なんでそんな片手落ちなレスすんの? ちゃんとループ含めて書いてあげなよ >>173 5ch管理者の者です みなさん答えてあげてください、 せっかくの連休です For i = Cells(Rows.Count,8).End(xlUp).Row To 2 Step -1 If Not (Cells(i, 8) <> "集計" Or Cells(1, 8) <>"総計") Then Rows(i).Delete Shift:=xlUp Next i 訂正 For i = Cells(Rows.Count,8).End(xlUp).Row To 2 Step -1 If Not (Cells(i, 8) ="集計" Or Cells(1, 8) ="総計") Then Rows(i).Delete Shift:=xlUp Next i >>190 その、だったら自分で書けば、の返しはやめてもらいたい このスレには質問者と回答者以外にもExcel勉強したくてロムしてる人だっているはず 質問と回答を再現してうまくいかない、回答が知りたいと思ってる人いる ただそのたび横からレスする訳にもいかないと思うし どうしてそんなに捻くれてて上から目線で偉そうなの? 確かに無償で教えて貰うことに厚かましいと言われたらそれまでだけど、だったら自分でやれば、ってできない子供に機嫌を損ねてネグレクトしてるのとちょっと似てる そこまで親切は求めないけど、せめて解決する回答を書くのが回答者としての書き込みのマナーやモラルだと思う わかってるのに書かないのが意地悪だってこと >>192 まぁまぁ。 回答者は確かにひねてるとこはあるな。 でも>>189 で再回答してるみたいだし許してやれ。 アンカーつけないあたりみても素直には答えてやんねーよってのが現れてるよなw ほんとは答えるのが好きなのにやってやってるって態度でしかできない可哀想な奴なんだろ。 >>193 ナニサマw お前もう居なくなれば? それでも答えたいならもう少し態度改めろ ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる