Excel総合相談所 135
■ このスレッドは過去ログ倉庫に格納されています
【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 Excel初心者です。 関数やVBAを調べながら業務をしております。 質問ですが、そのシートの決まった列だけタブ移動やクリックを受け付けない方法はありますか? これだけなら調べたり聞いたりしたVBAやセルのロックなどでうまくいきましたが、その状態のまま行コピーも出来る方法は無いでしょうか? よろしくお願いいたします。 Excel初心者です。 >>4 VBAで範囲選択とコピーすれば良いじゃん マクロの記録してみればコードは判るよ 【警鐘】と仰々しく、https://qiita.com/CodeOne/items/22004635d3c7cc533e5e しかし、事実は事実 その下の方にあるリンク『山市良のえぬ・・』などでも混乱ぶりが 【令和】Microsoftの元号対応が迷走・・ だと、各アプリ毎とかOSのビルドごととかの比較も載ってて良心的 ンなもン、#2019/4/30#< とかでちょろく変更できるレベルにしとかなきゃダメだ 便利を極め過ぎて不便極まりない 1年なのか元年なのか、細かい事言い出したらキリもない そこをスムースに「これでいいスか?」でジェントルに対応できるよう、各位精進せよ 真田のおやじ言葉なら「おのおの抜かりなく」 B1=10+20 A1=B1 とするとA1には30が表示されますが 数式そのものを引っ張ってくるにはどうしたらよいですか? ”=10+20” を文字列でほしいとかそういう事じゃない vba使わないと無理でしょ 見たいだけなら「数式の表示」で表示は叶 FORMULATEXT関数はExcel2013で追加された関数でしゅ(^▽^) 前のバージョンでは使えません(^▽^) 教えてください。 上級者の作った表でよくあるのですが、 表の部分だけ枠線が出来ており、シートの表以外の部分は、 薄いセル枠線すらなく真っ白のまま、というのをよく見ます。 実はセル背景と同じ真っ白色の罫線が設定されてるのではと思い確かめましたが そんなことはなく、罫線はなしになっていました。 あれ、どうやって作っているのでしょうか? RANK関数で列をまたいで範囲を指定したいのですが、うまくいきません。 =RANK(H1,$H$1:$H$10:$R$1:$R$10,1) エラーは出ないのですが戻り値が0になってしまいます。 全セルを選択しシート内の日付だけを残し金額だけを消したいです。 F5キーを押しジャンプし選択から定数、文字、論理値、エラー値でOKボタンを押してます。 これだと日付も一緒に消えてしまいます。 日付だけを残す方法はありますか? https://dotup.org/uploda/dotup.org1838555.jpg エクセルで作った見積書の日付欄なんですが今日のアップデートで令和表示されるようになったのですが 令和1年5月4日と表示されますこれを令和元年5月4日となるようにしたいのですがどうすればいいでしょうか 数式は =IF(A10=1,"平成 年 月 日",TODAY()) となっていますよろしくお願いします。 >>24 早速どうもありがとうございます。やってみます。 >>23 https://youtu.be/Eu7t7KpNrBg これがわかりやすいかと 画像にある赤い丸の部分 2:50秒あたりの所で 平成1年5月1日と平成1年12月31日 と記入してますが、その部分を 2019/5/1と2019/12/31 に書き換えてください。 https://dotup.org/uploda/dotup.org1838671.jpg >>26 よくわかりました。ありがとうございました。 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 誰かが勝手に設定を弄ってしまったらしく スペルミスしたセルに自動で波線が引かれなくなりました どうしたら全てのスペルミスしたセルに自動で波線が出るようにできるでしょうか? > 誰かが勝手に設定を弄ってしまったらしく あんたぁ自身が弄ったんじゃないのぉ? 先ずはそこんとこを反省してからだな >>29 自分は本当に設定を何も弄ってないのですが、ある日突然出なくなっていました そもそも設定系のタブを開く事がありません 第一、前日まで普通に使えていて、その状態で設定系のタブは一切開かずに、CTRL+Pで印刷、CRTL+Sで保存、×ボタンでExcelを終了、帰宅して、翌日の朝、出社していきなり使えなくなっていたんですから 前日に残業した人か早朝出勤した人が弄った以外にありえないでしょう? >>32 間違ったのを勝手に直すのではなく、間違ってるセルの下に波線を出す奴です Wordじゃなくて?Excelにそんな機能あったっけ なんかアップデートのせいで、今まで数字が見えてたセルが「##」になるんだけど… 1ピクセル分広げないといけなくなってメンドクサイ・・・ こういうの俺だけ? 別ブックの選択セルの中のマウスポインターの位置に押したボタンの文字が挿入されるマクロボタン作りたいんですがどんな感じになりますでしょうか 例えばぶっくaの「燃えるを捨てに行く」の文字列のをと捨の間にポインター置いてぶっくbの「ゴミ」のマクロボタンを押すと「燃えるをゴミ捨てに行く」になる感じです >>36 書き終わって間違いに気づきましたが奇跡的に意図は伝わると思うのでよろしくお願いします sendkeyやらAPIバリバリ全開で使うことになりそう 多分超めんどくさいぞ 俺は無理だ >>35 同じ症状が出た。 今回のアプデで列幅が勝手に縮められて、 図表のレイアウトが全部崩れた。 いったいどうしてくれるんだ、アプデ! そして誰か、一括で元に戻す方法あったら、教えてください。 >>39 列見出しの右端をダブルクリック 複数列選択後でも可能 まぁエクセルにはよくあることだな >>39 やっぱりアプデのせいか 勝手に列幅1ピクセル狭まる糞改悪しやがって 本当に死んでほしい >>40 レスサンキュ。 だけど、図表のレイアウトの都合で、 各列ごとに違う列幅を設定していたんだ。 しかも図表が100個くらいある。 100個の図表それぞれで、 それぞれの列幅を設定し直さないといけないと思うと、 気が遠くなる。 一括して元に戻す方法はないのか… >>42 俺と一緒や Excel2010で製作したファイルでカメラ機能で図表にしてるから、手直しが糞めんどくさい 列幅勝手に変更のアプデは最低最悪の所業だと思うが、 仕事でExcelの図表使っている会社からクレームは来てないのか? 明日からの仕事再開でどっとクレーム来るか。 >>44 そんなもんやで クレーム送っても特に何も変わらないし戻るわけでも無いので時間の無駄 文句言う暇あったら粛々と再設定作業しよう 初心者ですがVBAについて質問です。 特性のセルに 他のソフトの値からコピペした 中心(ワーク)( 0.000000, 0.000000, 25.000000 ) という文字が貼り付けられたと同時に、オブジェクトを作って動かすマクロを作りたいのですが、ご教授下さい。 オブジェクトを作って動かすマクロはマクロの記録で作れたのですが、 中心(ワーク)( 0.000000, 0.000000, 25.000000 ) の25.000000 が 0の時はAのマクロ 25.000000の時はBのマクロ その他の時はCのマクロ という具合に機能できればと思っています。 エクセル2007のWIN7ですがよろしくお願いします >>46 多分単語を間違えている そのまま読むと意味が分からないところが多い >オブジェクトを作って動かすマクロ これが良く分からない。オブジェクトって何のオブジェクト? とりあえず貼り付け時に動く物はこんな感じ Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next flg = Target.Value flg = Split(flg, ",")(2) flg = Replace(flg, ")", "") flg = Replace(flg, " ", "") If flg = "25.000000" Then Call sub_a ElseIf flg = "0.000000" Then Call sub_b Else Call sub_c End If On Error GoTo 0 End Sub >>45 さすがにクレーム多いと改善するよ 去年あったアプデでクレーム殺到した結果 クレームのあった機能を元に戻すアプデあったし ただ、今回の場合再アプデでまた設定し直しする羽目になりそうだが >>47 ありがとうございます。 すみませんオブジェクトじゃなくてオートシェイプ(図形)でした 数値によって違う位置のラインを引きたいと思ってます。 マクロの記録を使ってそのコードがわかりました。 そのコードを今教えてもらったところに Call sub_macro a などでよろしいでしょうか? >>50 ありがとうございます。 明日試させてもらいます! >>39 >>44 とりあえずKB4495667を削除したら列幅やセルクリックのVBAが作動しない問題は治った。 アプデが害悪。たぶんすぐ対応のパッチ出すと思うけど、本当にMSざるすぎるでそ >>59 でそ でしょ? カッコ悪いからやめたまえ >>50 何度も申し訳ありません。 昨日教えていただいたコードで 例えばA1のセルに貼り付けた時に動かす場合どの様にコードを変えればよろしいでしょうか? レベルの低い質問ですがよろしくお願いいたします。 >>61 スマホだからスペル違うかも知れんが、エラーでたら適当に解釈してくれ Private Sub Worksheet_Change(ByVal Target As Range) if target.row=1 and target.column=1 then On Error Resume Next '省略 On Error GoTo 0 endif End Sub >>59 会社で使う資料の表が崩れてたから助かったわ ありがと >オプションとして配布されるはずの「KB4495667」が誤って一部ユーザーに自動配信されていたことを明らかにした。すでに対策が講じられているため、ユーザー側の対処は不要だ。 「Windows 10 バージョン 1809」向けの“オプション”パッチが誤って自動配信される https://forest.watch.impress.co.jp/docs/news/1183014.html これは酷いwww 見たことが無いアップデートメッセージが出たって職場のおじさん大騒ぎしてたけど、これかぁ アップデートでKB4495667を間違って入れたやつはとりあえずアンインストールしたほうがいいぞ 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2013 【3 VBAが使えるか .】 いいえ(マクロの記録程度なら可) 【4 VBAでの回答の可否】 可 質問させてください。 A1セルの値によって別シートにある文字列を○(オートシェイプの楕円等)で囲むことは可能でしょうか。 具体的にはとある事柄について「可」ならば、A1に入力規則で「○」に入力(不可なら空白のまま)することで印刷用シート上の「可能」の文字を囲みたいです。 A1の値は空白か否かを想定していますが、作業列の追加は可能なので、数字でも大丈夫です。 よろしくお願いします。 >>69 図のリンク貼り付けを使うと楽 https://dotup.org/uploda/dotup.org1841933.xlsx.html コピーペーストで、ペーストの時に右クリックで図のリンク貼り付けってのがあるから それを使えばojk >>70 このやり方でなんとかなりそうです。 ありがとうございました! IEでリンクをクリック→@入力ボックスに数字を手入力→A保存ボタンをクリック→Bファイル保存ウィンドウが出るまで待機し出たら保存クリック→クリックで別窓を開き、その別窓で@〜Bと同じ動作をする こういう自動化ってvbaだけでできますか?(@は一部手作業ですが) GW開けてからTwitterでKB4495667の被害報告多数出てるな 日付データのセルを並び替えたいのですが ↓のようにバラバラになってしまいます。。 この場合どうすれば良いのでしょうか? ご教授願いますm(__)m 2017年10月18日(水) 午後6:25 2017年10月1日(日) 午後0:05 2017年10月21日(土) 午後10:47 2017年10月3日(火) 午後4:32 2017年10月4日(水) 午後3:53 2017年10月6日(金) 午後5:15 2017年10月7日(土) 午後10:18 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 A1セルに【1<2<3<4<5】と入力した時に B1セル【1】 C1セル【2】 D1セル【3】 E1セル【4】 F1セル【5】 と文字を抽出するにはどうすればいいでしょうか? 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Googleスプレッドシート 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 averageif関数で次の関数を組みました。 =averageif(Sheet2!A:A,"<>山田",Sheet21!B:B) A列が「山田」では無い行のB列の値の平均値を出したいのですが、 これをaverageif関数を使わずに =ArrayFormula(average(if( )))」で組むにはどうすれば良いでしょうか。 >>76 誤字訂正です。 Sheet21!B:B →Sheet2!B:B >>75 ですがMID関数で出来ました 取り消します >>74 文字列になっているので作業列を使って日付型に直す B1=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE( SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1, "(日)",""),"(月)",""),"(火)",""),"(水)",""),"(木)",""),"(金)",""),"(土)","") ,"年","/"),"月","/"),"日",""),"午前",""),"午後","")+IF(ISERROR(FIND("午後",A1)),0,1/2) 後はB列を基準に並び替え 日付を抜き出す式 =DATEVALUE(LEFT(A1,FIND("日",A1))) 時刻を抜き出す式 =TIMEVALUE(RIGHT(A1,LEN(A1)-FIND("午",A1)-1))+TIMEVALUE("12:00:00")*(SUBSTITUTE(A1,"午後","")<>A1) 日付+時刻は2つの答えを足し算するだけ >>80 評価するのは良いけど、より良い式を提出しないと無能の烙印押されるぞ >>79 >>81 ものすごく助かりました。 2日間悩んだのが嘘のようです。 Excelって奥が深いんですね 本当にありがとうございました<(_ _)> ありがとうございます。 End If を付ければうまくいきました。 少しずつ勉強していきます。 >>62 ありがとうございます。 End If を付ければうまくいきました。 少しずつ勉強していきます。 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel365 【3 VBAが使えるか .】 【4 VBAでの回答の可否】 私自身は365を持っていないのですが、365ユーザーに操作を聞かれて困っています。 「非表示にした行」は、どう操作すれば表示に出来るでしょうか? ちなみにExcel2010での操作は、非表示にされている辺りの行をまとめて選択して、 (または名前ボックスから直接非表示行を"A55:A71"と言った具合に入力指定して) ”ホームタブ>書式>非表示/再表示>行の再表示”でした。 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 開いているIEを全て閉じ、特定のurlを開き、カーソル位置に文字を入力したいのですが、どう書けばいいでしょうか 文字入力はカーソルがアクティブになってればsendkeyでいけますよね? >>86 >”ホームタブ>書式>非表示/再表示>行の再表示”でした。 どっちでもいいけど、右クリックの再表示の方が早くない? あとこのスレ教えて上げればいいよ 誰かテキトーに答えてくれる >>87 開いてるIEってエクセルから開いたIEオブジェクトの事? それとも普通のIE? 後者だとかなりキツイ >>87 とりあえず前半だけ IEを全部閉じる 後半は俺には高度すぎて無理だ Sub CloseAllIe() Dim oSA As Object Dim oWT As Object Set oSA = CreateObject("shell.Application") For i = oSA.Windows.Count To 1 Step -1 Set oWT = oSA.Windows(i - 1) If TypeName(oWT) = "IWebBrowser2" Then oWT.Quit Next End Sub >>88 前者で大丈夫です 自分でもgetelementbyidなるものでやってまたんですが原因不明のオートメーションエラーとやらが出てしまいました・・ >>90 ありがとうございます、閉じるのはなんとかなりそうです! 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2016 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 [タブ1]ページ1,ページ2,ページ3 [タブ2]ページ1,ページ2,ページ3,ページ4 [タブ3]ページ1 [タブ4]ページ1,ページ2 [タブ5]ページ1,ページ2 ・ ・ [タブ20]ページ1,ページ2 このようなエクセルファイルがあり、 [タブ1]の全ページ、[タブ3]の全ページ、[タブ4]の全ページ、[タブ6]の全ページ、・・・[(タブ20ほどまである)]と、 印刷の必要のないタブは除いて、全ページ印刷を行いたいです。 [タブ1]をクリック→作業中のシートを印刷→[タブ3]をクリック→作業中のシートを印刷→[タブ4]をクリック→作業中のシートを印刷・・・とやると果てしない作業になってしまうので、なんとか「ブック全体を印刷」で印刷できるようにしたいのです。 (印刷の必要のないタブを消すと、計算式などが絡まっているらしく、他のタブに影響があるために消せません) @[タブ2][タブ5]をあらかじめ「ブック全体を印刷」では印刷されないようにする操作などはありますでしょうか? 印刷範囲の設定、でできるかなと思ったのですが、印刷範囲を無くすことはできませんでした。 A印刷範囲を完全に消すことができないなら、ページ指定で「1-3,8,9-10」のように指定すればいいのでは、 と思ったのですが、2016では[]から[]までという入力しかできないようです。 不可能でしょうか? Bどれをタブを印刷しますか?□タブ1 □タブ2 □タブ3 ・・・ みたいなのがでてきて、 これとこれとこれーとチェックいれたら印刷できるーみたいなのがあれば最高なんですが そういうアドインとか機能はありませんでしょうか? if(A1="","",○○)で空白が入力されたセルを更にcountifsで参照すると"<>"を空白と認識してくれません if(A1="",0,○○)にして"<>0"なら認識するんですが 空白無理ですか? >>95 "<>"&""でも無理でした 何とか空白で出来る方法ありますか? 数式の空白と元の空白が区別される・・・前からこんな仕様だっけか [タブ2]ページ1,ページ2,ページ3,ページ4 [タブ5]ページ1,ページ2 [タブx]ページ1,ページ2 [タブx]ページ1 -----いらないタブを前半にもっていって---- [タブ1]ページ1,ページ2,ページ3 [タブ3]ページ1 [タブ4]ページ1,ページ2 ・ ・ [タブ20]ページ1,ページ2 で、[タブ1]の最初のページ〜最後のページを印刷すれば 一気に印刷できてクリック数も減る気がしてきました。 ・・・スマートですかねこれ >>97 countifなら""が空白とみなされる countifsだと""が空白とみなされない こんな事ありましたっけ? ExcelはBlankとnullが別扱いで数えるのに専用の関数すらあるだろ 昔から一貫したクソ仕様のはず >>100 null数えるのは2010でできますかね? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる