Excel総合相談所 135
レス数が1000を超えています。これ以上書き込みはできません。
【1 OSの種類 .】 Windows**
【2 Excelのバージョン 】 Excel**
【3 VBAが使えるか .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
▼━関連スレ━━━━━━━━━━━━
前スレ
Excel総合相談所
https://find.5ch.net/search?q=excel
Excel VBA 質問スレ
https://find.5ch.net/search?q=excel+vba
【質問不可】Excel総合相談所スレの雑談・議論スレ
https://find.5ch.net/search?q=excel+%E3%80%80%E7%9B%B8%E8%AB%87%E6%89%80 一応言っておくと一行目のA7に「納品日」があるとエラーになるけどそれはなんの分岐もしていないぞ >>959
こんな一瞬でできるようなのがキツいとか
こんなハゲとはいっしょに飲みに行きたくないな お、なんだなんだ
文句だけ付けて自分は何も案出さないという職場で最も嫌われる典型がやってきたぞ >>961
むしろハゲにする方法教えろ
今脱毛してるんだけど、あごひげだけ脱毛終わらないんだよ
脇とか色々終わった いつもならvbaのコード最適化しろやっていうとこだけどお前より俺の能力の方が高いからどうでもいいわ
マジであごひげなくならねぇ
乳毛も脇毛もなくなったけど肝心のあごひげなくならないんだよどうすりゃいんだよ スレの立て方が分かりません。…
もっと有益な会話をしたいです!VBA初心者の方いませんか? >>965
いねーよ、ここは達人の集まりだ
vbaってのは要するにExcel作業の自動化
Excelで手作業を繰り返している会社なら英雄になる
「a1とb1をc1に自動的に出すだけ。それが100シート」
ただし、多大な損失が生じる可能性がある
「言い忘れたけど合計が偶数になると別ブックに転記する必要があるんだよね〜」
逆に、そもそもExcelを使わない大企業では意味がない >>965
ここは質問スレであって会話なら雑談スレいけ
質問に関連する事ならいいが、脱線しすぎは迷惑になる
>>966
カッコいい!そしてスレ立てthx 雑談スレいくわ。すまんかったね。
ありがとうございます! 【1 OSの種類 .】 Windows10
【2 Excelのバージョン 】 Excel2013
【3 VBAが使えるか .】 中級
【4 VBAでの回答の可否】 可
あるシートを新規別ブックにコピーしてそれにファイル名をつけて保存する、ということを
やりたくて試行錯誤しています。
一応、コピーして保存はできたのですが、元シート上にあるコマンドボタンまでコピーされて
しまいます。
コマンドボタンをコピーさせない方法ってないでしょうか?
今は
mySt.Copy
ActiveWorkbook.SaveAs ****
という単純なコードです。これを書き換えて、コマンドボタン以外だけをコピーとしたいです。
よろしくお願いいたします。 >>974
mySt.Copyの次の行にボタン削除を入れる
シートコピーと言うのはシート自体をコピーするんだからそこにあるものは当然全てコピーされる >>975
具体的には
activesheet.Shapes.range("Button 1").delete
か
For Each eShape In ActiveSheet.Shapes
eShape.Delete
Next
を入れとく そうだね
ボタン名がはっきりわかってピンポイントで消したいなら上で
なんでもいいからデータだけ残したいの!という場合は下 いや、数が少ないなら上、多いならForでボタンだけ消せばよい Forで回してShapeがボタンかの判定を入れたらもっといいね
初心者だとしたらコピー後のボタン名をちゃんと調べられるかなと思って下のも用意した
あれ?!俺はどうやって調べたんだっけ もう忘れたw >>976よく見たら上も間違ってるわ
ともかく数が少ないなら直指定でもいいし、多い又はとにかく全部消したいならForで回せばいい >>974
新規ブックにコピーディスティネーションじゃダメなんかい! 【1 OSの種類 .】 Windows10
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 入門中
【4 VBAでの回答の可否】 不可
教えてください。
B列に日付、C列からH列まで、品目ごとの買物金額が入力されている100行くらいの表があるとします。
A1に日付を入力すると、A2に、その日の買物の合計金額が出るようにしたいです。
=SUMIF(B1:B100,A1,C1:H100)
↑
これではダメみたいなんです。どうすればいいでしょうか? >>984
マイクロソフトのサイトのSUMIF関数の解説のページ
https://support.office.com/ja-jp/article/sumif-%E9%96%A2%E6%95%B0-169b8c99-c05c-4483-a712-1697a653039b
を見てもらうとわかります。条件となるセル範囲がB1:B100、つまり1列×100行を指定した場合は、
合計範囲をC1:H100(つまり6列×100行)と設定しても、実際に合計の対象となるのは1列×100行となる
C1:C100だけになるはず。
よって、=SUMIF(B1:B100,A1,C1:C100)+SUMIF(B1:B100,A1,B1:B100)+ と、SUMIF関数を6個連ねるのが正解。 >>985の続き
もし、B列に日付の重複がないことが確実であるならば、日付の一致する行のC列〜H列の合計を
出すとして、SUMIF関数を使わず、SUM関数、OFFSET関数、RESIZE関数を組み合わせて
できそうだけど、ただいま試行錯誤中。 >>984
=SUMPRODUCT((B1:B100=A1)*C1:H100,) カンマがいらないと思うんだがバージョンが違ったらそれでも動くんか
しかしsumproductを使ったらsumifもcountifも無駄な知識だなと思ったが
この二つはワイルドカードが使えるというアドバンテージがあるんだな >>987の後ろのカンマはゴミ
タッチミスかなんか >>985-989
ご親切に教えていただきとてもありがとうございました。 SUMPRODUCTでこんなこともできるのね。
”正解”などと書いた自分が恥ずかしい orz SUMPRODUCTは便利だけど直感的組める配列数式使っちゃうことが多いわ よろしくお願いします。
あるブックの2つのシートに、1つずつ表があります。
どちらの表にも同じ「会員番号」という列があるのですが、
これをもとに、
・AシートとBシートの両方に入っている人
・Aシートにしか入っていない人
を一目でわかるようにしたいです。
なにかいい方法はないでしょうか? 一目でわかるようにするの意味がハッキリしないが
VBA使わないと面倒だと思う >>995
作業列を使うか、「会員番号」の列に対する条件付き書式でいけると思う。
どちらのシートも 会員番号の列はB列 と仮定して、
作業列を使う方法→Aシートの作業列をC列と仮定→AシートのC2セルに計算式
=COUNTIF(SheetB!$B:$B,B2)
と入力して、下方向に必要なセル範囲までドラッグコピーする。
シートBにも存在する会員番号があれば、その個数がC列に表示される。なければ0が表示される。
条件付き書式を使う方法(条件は上に同じ)シートBにも同じ会員番号があるとき、当該セルを黄色塗りつぶす場合
B2〜B列の最下行までのセル範囲を選択する→条件付き書式→新しいルール→数式を使用して〜
→数式の欄に =COUNTIF(SheetB!$B:$B,B2)>0 と入力→[書式]ボタンをクリック→
塗りつぶしのタブをクリック→黄色を選択→[OK]をクリック→[OK]をクリック→[適用]をクリック→[OK]をクリック
黄色になってないセルの会員番号はシートBには存在しないということを示します。
こんなのでいかが?ただし、この設定だけでは「Bシートにしか入ってない人」はわかりません。 このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 90日 7時間 10分 2秒 レス数が1000を超えています。これ以上書き込みはできません。