Excel総合相談所 132
■ このスレッドは過去ログ倉庫に格納されています
▼━質問テンプレ (出来れば使ってね) ━━━ 【1 OSの種類 .】 Windows** 【2 Excelのバージョン 】 Excel** 【3 VBAが使えるか .】 はい・いいえ 【4 VBAでの回答の可否】 可・否 ▼━関連スレ━━━━━━━━━━━━ 前スレ Excel総合相談所 131 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 >>188 普通にvlookup関数か、index関数とmatch関数でいけるのでは? >>191 横レスだけど、MOUSで勉強でもされましたか? ネストとかになるとネットで調べないと対応できなくて MOSは持ってないですが、我流よりは独学でもいいので 体系的に学習した方がいいかもしれません。 というほど私も詳しくないですが。 ネストは慣れでしょうけど、 1.作業列使ってシンプルに書く。 2.必要に応じてそれを1つの式にする。 という段階を経てやるのがいいのではないでしょうか。 >>188 =index(bの住所列,match(aの会員ID,bの会員ID列,0)) =index(bの電話番号列,match(aの会員ID,bの会員ID列,0)) >>196 ああ、そうですね。言われてみるとその通りです。 =IF(A1<>SUBSTITUTE(A1,"クレーム",""),"〇","×") ということは、3つの中でこれが一番シンプルかも。 超初心者です。ブイルックアップが全くわかりません!教えてください! なんかエクセルファイル開こうと思ったらいきなりofficeの何とか同意しますかって画面が出てきた 同意したら普通に使えるようになったけど 定期的に認証確認してるってことでいいのかな 1年使っててこんなの初めてなんだけど >>201 何に同意するのかちゃんと読むようになれば初心者脱却 >>202 拾った画像だけど https://i.imgur.com/amyRjdA.jpg この画面で間もなく準備〜じゃなくて使用許諾とかだったと思うけど で同意してofficeを開始ってボタンになってた 仕事でメール送る必要あったからとっさに同意してしまったけど officeHB2016のスタンドアローン版ね office365solo Excel2016で1ヶ月前からエラー 一部の内容に問題が見つかりました。可能な限りを回復しますか?→はい 修復されたレコードが〜 このときのtable番号メモ ブックの拡張子→zipに変更中身確認、table番号から該当テーブル特定 別PCのExcel2010で該当テーブルを「範囲にへんかん」 これでExcel2016で起動できた コミュニティにも同様の質問がちらほら へんかん(漢字) NGワードわろた ▼━質問テンプレ (出来れば使ってね) ━━━ 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2013 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 [データ]−[グループ化]に関しての質問です。 Googleスプレッドシートでグループ化(折り畳み)を行うと、 開閉ボタンはグループ化する対象の1行上に表示されるのに対し、 Excelでは指定した行の1行下に表示されます。 Googleスプレッドシートで設定後にExcel形式でダウンロード→Excelで開くことで Excel上でスプレッドシートと同様1行上にボタンを表示させることはできますが、手間です。 使う目的としては1行上に表示される方が都合が良いのですが、 Excel単体でそうなるように設定する方法はありますでしょうか。 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 workday関数についてですが、1年間の表を作りたいのですが、1週間に一度くらいの割合で日付が2日ほど飛んでいます。 セルの参照は間違っていないようなのですが、何が原因か分かりません。 原因と解決策がわかる方がいれば、ご教授いただければ幸いです。 >>207 workday関数は土日と指定したリストに含まれる日を除く関数 >>208 ありがとうございます workdayを使わなければちゃんとした表が作れました >>201 この表示が出て同意するしかないから同意したけど そのあとから今まで使えてたアドインがバーから消えてて、アドインの項目調べたらチェック自体はついてるんだけど どうすればいいのかな 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2016 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 詳しい方教えて下さい。 複数のシートに貼り付いた図形(正方形/長方形)から文字を抜き出す方法を教えて下さい。 自分なりに探しテキストボックスから文字を抜き出すマクロを見つけ実行しましたが作動せず。 https://www.relief.jp/docs/excel-vba-wright-texts-in-textboxes-to-cells.html やはりテキストボックスと図形(正方形/長方形)は違うのでしょうか? ちなみにこれが実行したマクロです Sub テキストボックスの文字列を書き出す() Dim shp As Shape Dim n As Long ' 文字列を書き出す行番号 n = Cells.SpecialCells(xlCellTypeLastCell).Row + 3 For Each shp In ActiveSheet.Shapes If shp.Type = msoTextBox Then Cells(n, "A").Value = _ shp.TextFrame.Characters.Text n = n + 1 End If Next shp End Sub すみません 【4 VBAでの回答の可否】 可です。 >>213 複数のワークシートを順に選択するプログラムがどこにもない Sub テキストボックスの文字列を書き出す() Dim shp As Shape Dim n As Long ' 文字列を書き出す行番号 n = Cells.SpecialCells(xlCellTypeLastCell).Row + 3 For Each ws In Worksheets For Each shp In ws.Shapes Cells(n, "A").Value = shp.TextFrame.Characters.Text n = n + 1 Next Next End Sub >>215 ありがとうございます。 本当に助かりました。 【1 OSの種類 .】 Windows7、10 【2 Excelのバージョン 】 Excel2007、2013 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 同じセル内でもドロップダウンリストの項目を変える方法を教えてください。 A列には箇所1、箇所2・・・箇所10といった箇所を入力 B列には箇所ごとに発生する5〜10種類のエラー内容を入力(トータルで60項目程度で内容に被りは無し) といった感じで入力していますが、入力する人によって言い回しや送り仮名の使い方が違っていて 履歴を辿りたい時に苦労することがあります。 なので、ドロップダウンリストから選択する方式に変えたいのですが、 エラー内容が60項目もあるのでそのままだと選択すること自体が大変になりそうです。 A1で箇所1が選択された場合は箇所1のみで発生するエラー内容(6項目)のドロップダウンリストを、 A2で箇所3が選択された場合は箇所3のみで発生するエラー内容(8項目)のドロップダウンリストを・・・ このようにしたいのですが、方法があったら教えてください。 質問ではドロップダウンリストと書きましたが思いついたのがそれだけであって、 A列の選択内容によってB列のリストが適切なものになる方法であれば何でもOKです。 よろしくお願いします。 あるデータの桁数を揃えたいのですが、どんな計算式を使えばいいでしょうか。 1-2-3-4 ↓ 1-02-03-004 1桁2桁2桁3桁に揃えたいです。 >>221 =LEFT(A1,2)&TEXT(LEFT(MID(A1,3,9),FIND("-",MID(A1,3,9))-1),"00-")&TEXT( MID(LEFT(A1,FIND("c",SUBSTITUTE(A1,"-","c",3))-1),FIND("b",SUBSTITUTE( A1,"-","b",2))+1,3),"00-")&TEXT(MID(A1,FIND("d",SUBSTITUTE(A1,"-","d", 3))+1,3),"000") 今手元にないから確認できないけど 見た目だけでいいなら書式設定でできるんじゃ? 元データは文字列にしかならんだろうし、どう書式設定するというんだ 質問です。 データ整理と検索についてなのですが 例えば建物名とその建物のに振られた番号があるとします。 no1 テストビル no2 テストマンション no3 テストスーパー といった具合の一覧があるとして 表を作った時にセルにno1と入力したら 隣のセルにテストビルと抽出させるようにすることはできますか? できるとしたらどのような関数と式を用いればいいでしょうか。 よろしくお願いいたします。 サーバにインストールするExcelと クライアントのパソコンに入れるExcelはまた種類がちがうの?bit数は違っても32bitならいけるとおもうが ▼━質問テンプレ (出来れば使ってね) ━━━ 【1 OSの種類 .】 Windows7Pro 【2 Excelのバージョン 】 Excel2,016 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 入力規則について質問です プルダウンリストを設定して入力規則のエラーメッセージのタブで 無効なデータが入力されたらエラーメッセージを表示する にチェックマークを入れてスタイルを停止にすると 勝手に入力しようとしたらエラーメッセージが表示されると思いますが エラーメッセージが表示されず自由に入力できる時があります 何が原因でしょうか https://i.imgur.com/8Xo9r1D.jpg https://i.imgur.com/vFayrKv.jpg >>228 です 自決しました プルダウンリストの範囲に後で追加できるよう空欄セルを含めてると 自由に入力できることが分かりました お騒がせいたしました 桁括りの , が、何の為にあるのか、 分からないまま、逝っちゃったんだろうナ・・・ ▼━質問テンプレ (出来れば使ってね) ━━━ 【1 OSの種類 .】 Windows7Pro 【2 Excelのバージョン 】 Excel2,010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 入力規則について質問です 2段階のプルダウンリストを設定して 初段のリストから選択した値を読み込んで もう1つのプルダウンリストには最初に選択された値によって絞り込まれたリストが出るようにしたいです 私の知っている方法では リストの元となるデータ表を作成し 必要なリストごとに名前を設定して 2段階目のプルダウンリストに =indirect(初段リストのセル番地)ぐらいなのですが 今回これではできない理由があります 初段リストに載せる値がスペースや,などが入っており(これは絶対に変えれません)名前の定義ができませんと拒否されます なので名前の定義ができない以上この方法は使えなく、他にいい方法があれば教えてください>< お願いします そして別表で作った 何が原因でしょうか https://i.imgur.com/8Xo9r1D.jpg https://i.imgur.com/vFayrKv.jpg >>233 すいません 内容コピって消さずに書き込んじゃいました ▼━質問テンプレ (出来れば使ってね) ━━━ 【1 OSの種類 .】 Windows7Pro 【2 Excelのバージョン 】 Excel2,010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 入力規則について質問です 2段階のプルダウンリストを設定して 初段のリストから選択した値を読み込んで もう1つのプルダウンリストには最初に選択された値によって絞り込まれたリストが出るようにしたいです 私の知っている方法では リストの元となるデータ表を作成し 必要なリストごとに名前を設定して 2段階目のプルダウンリストに =indirect(初段リストのセル番地)ぐらいなのですが 今回これではできない理由があります 初段リストに載せる値がスペースや,などが入っており(これは絶対に変えれません)名前の定義ができませんと拒否されます なので名前の定義ができない以上この方法は使えなく、他にいい方法があったら教えてください>< お願いします 2段めを成約する範囲の名前が、1段目の値そのものでなくてもいんじゃないの >>235 1段目の値そのものにしないと どうやってリストを絞り込むんですか? 例えばですけど 1段目 2段目 人事 Aさん Bさん Cさん 経理 Dさん Eさん 総務 Fさん Gさん Hさん Iさん というデータリストがあって 1段目で人事を選ぶと2段目ではA〜Cさんまでしか リストに表示されないようにしたいんです そこで1段目のリストのデータ範囲に人事、経理、総務 を入力します 次にAさん〜Cさんの範囲で「人事」と名前の定義 DさんからEさんの範囲で「経理」と名前の定義 FさんからIさんの範囲で「総務」と名前の定義 をします 最後に2段目のリストのデータ範囲に indirect(1段目のリストの番地) と入力すると1段目の値から名前を読み取って定義づけされた名前の範囲のデータを選択できるようになるんですが、 そもそも名前の定義づけができない場合に他の方法で同じことできる方法を教えて欲しいのです 1段目の値を元にVLOOKUPで別の値を引いてきて それを元に2段めを ってこと >>237 これはすごい! ありがとうございます! >>238 その方法もできそうですね! ありがとうございます ▼━質問テンプレ (出来れば使ってね) ━━━ 【1 OSの種類 .】 Windows7Pro 【2 Excelのバージョン 】 Excel2016 【3 VBAが使えるか .】 ネット上にある既存のVBAの参照セル等を変更してアレンジする程度 【4 VBAでの回答の可否】 可 PDFで保存した後そのPDFを開きたいと思い検索していたら下記VBAを見つけました 下記VBAそのままコピペしたら問題無く使えたのですが、 同一ファイル名のPDFがあると上書き保存されます 同一ファイル名があった時、ファイル名末尾に(1)、(2)、(3)・・・と追加して保存して 上書き保存されないようにできますでしょうか https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10129152500 Sub Test() Dim FileName As String Dim FilePath As String Dim FSO As Object FileName = ThisWorkbook.Name Set FSO = CreateObject("Scripting.FileSystemObject") FileName = FSO.getbasename(FileName) FilePath = ThisWorkbook.Path & "\" Worksheets("Sheet1").Select ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ FileName:=FilePath & FileName & "_" & Range("A1").Value & ".pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=True End Sub 【1 OSの種類 .】 Windows8.1 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 質問失礼します このように、別々のシートに存在するデータ同士を、データが合致する位置で貼り付ける(合成する?)方法を探しています https://imgur.com/a/lPZ0F8m 実際に貼り付けたいセル同士は何百ものデータがあり、データが抜けている行がいくつもあるため、データが合致する位置で貼り付けるとなると1つ1つ貼り付けるくらいしか方法がわかりません… 何かいい方法はないでしょうか?よろしくお願いします 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 前任者の残していったこのようなVBAがあります。 このexcelブックを他のPCで使うために、絶対パスを相対パスに変更したいです。 どこをどのように書き換えればいいでしょうか? _______________________________________ Sub test() Dim strFileName As String 'CSVファイルの存在するフォルダ指定 'ファイルオープンダイアログ ChDir ("C:\Users\test\Desktop\aaa\bbb\ccc") strFileName = Application.GetOpenFilename("CSVファイル (*.CSV),*.CSV", (1), "ファイルを選択") If (strFileName <> "False") Then _______________________________________ chdir部分を("‥/)のように変更してみましたが駄目でした。 ご教授いただければ幸いです >>241 dir関数でファイルの検索をループして カウント ファイル名の拡張子前にカウントをつける >>243 共有フォルダではないという前提 実行ファイルの置き場から設定するのが普通かと思われます ChDrive ThisWorkbook.Path ChDir ThisWorkbook.Path & "\ccc" マクロを記述するファイルをcccのひとつ上の階層のフォルダにおいて、そこから相対参照 >>244 すみません、その後ファイル名が重複した時、連番で保存すると 1.重複があって連番で保存されたことに気付かないかもしれない 2.結局またファイル名を修正せねばならない 以上理由で名前を付けて保存のメニューが出てファイル名の欄に重複してるファイル名が表示されるよう下記URLのVBAを組み込んでみたところ、 https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1182505766 重複判定は正しく機能しているようなのですが重複していて名前を変更して保存した時に保存されません また名前を変更せず保存した時も保存されません 恐らく、FileFilter:="PDFファイル,*.pdf", _の部分が問題かと思うのですがどのように変更しましたらよろしいでしょうか Sub PDF() Dim FileName As String Dim FilePath As String Dim FSO As Object FileName = ThisWorkbook.Name Set FSO = CreateObject("Scripting.FileSystemObject") FileName = FSO.getbasename(FileName) FilePath = ThisWorkbook.Path & "\" 'ここから下を追加 Dim FSO2 As Variant Dim FN As String FN = FilePath & FileName & "_" & Range("D20").Value & "(" & Range("J3").Value & ")" & ".pdf" Set FSO2 = CreateObject("Scripting.FileSystemObject") 'ファイルの存在チェック If FSO2.fileExists(FN) Then '保存ダイアログ FN = Application.GetSaveAsFilename( _ FileFilter:="PDFファイル,*.pdf", _ FilterIndex:=1, _ InitialFileName:=FN, _ Title:="PDFファイルの保存") 'キャンセルした場合は終了 If fname = "" Then Exit Sub End If End If 'ここから上を追加 Worksheets(ActiveSheet.Name).Select ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ FileName:=FN, _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=True End Sub >>244 携帯から補足 filepathの次に以下コード Dim fc as Long Dim fn as String fn =Dir(filepath&filename&"_"&range("a1")&"*") Do While fn <> "" fc = fc + 1 fn = Dir() Loop 下から5行目保存部分 FileName:=FilePath & FileName & "_" & Range("A1").Value & "("&fc& ").pdf", _ 厳密にはfcが0のときの処理が必要です >>245 >>246 レスありがとうございます どちらの関数も初見なので調べてみますね ヒントだけでもありがたいです、助かります >>249 ありがとうございます 一部修正したら使えました >厳密にはfcが0のときの処理が必要です たしかに重複がなかった時も末尾に(0)が付くのはかっこ悪いですね 今後、使うかもしれませんのでこちらも保存させていただきました 何度も申し訳ありませんが>>248 も 見てもらえませんえしょうか >>248 キャンセルしなかったら保存のコードがないようです 勘違いです(^^; 画面外になっていました 調べて見ますのでお待ちください >>253 >>255 ありがとうございます >>248 の’キャンセルした場合は終了の下を If FN = "" Then に修正したら保存できるようになりました しかしキャンセルした時もなぜかファイル名Falseで 保存されてしまいます キャンセルするとFNが空になりThenでExit Subに なるかと思うのですがキャンセルでもExit Sub してないように思えます 違った exit subの上のif文を if FN=falseに変更で たびたびすいません falseではなく"False" >>248 '重複が連番 fn1 = "D:\" & Range("a1").Value I = 0 Do FN2 = fn1 & Format(I, "(0);;""""") & ".pdf" If Dir(FN2) = "" Then Exit Do I = I + 1 Loop >>258-259 できました 完璧に希望の動作になりました ありがとうございました >>260 ありがとうございます そろそろ会社出るので家に帰ってから研究したいと思いますが 重複した時に名前を付けて保存で重複ファイル名+連番が セットされるVBAでしょうか? 質問させてください 121.81 125.86 121.66 統計 125.86になるみたいですが 平均をクリックしても123.11にしかならないのですが何が違うのでしょうか? 分かる方おねがいします。 アフィかなんかで宣伝と思われた困りますので このHPに掲載されていた画像です。 https://stat.ameba.jp/user_images/20170114/09/gold1977/c3/e9/p/o0508014413845066888.png これを表したかったです 高値(C列)、安値(D列)、終値(E列)でSUM関数を使えば求められます。 と書いてあるのですが、どうしてもその計算になりません。 統計(とうけい、statistic)は、現象を調査することによって数量で把握すること、または、調査によって得られた数量データ(統計量)のことである。統計の性質を調べる学問は統計学である。 このHPに掲載されていた画像です。 ではなくその人のHPの画像です。 >>267 統計ではなく総計 左から順に最高値、最安値、平均 max、min、average たぶんここまで読めないとFXは手を出しちゃいけないと思うぞ HPが間違いじゃないかと回答が出ました。 ありがとうございました。 >>260 これが何か分かりました >>249 の重複していない時に(0)が末尾に付かないバージョンですね >>248 のここから下を追加とここから上を追加の部分をこれに置き換えてコピペして 下から5行目保存部分FileName:=FN2に変更したら 以上動作となりました ありがとうございます >>272 回答が出たって何だよ。筆者に確認してミスでしたって言われたと? すんません ちょっと向こうのWordスレ過疎りまくってるんでこっち来たんだけど Wordの知識もバッチリだぜって奴がおられましたら ちょいと向こうに書いたの解決してやってもらえんですかね https://mevius.5ch.net/test/read.cgi/bsoft/1464440640/270 WordでExcelみたいな感じで表が作れたらExcelの需要は随分減る気がする 【1 OSの種類 .】 Windows10 【2 Excelのバージョン 】 Excel2013 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 A列のリスト範囲内で常に一番上の値を返したいので、以下の関数を組みました。 =INDEX(A:A,MATCH(1,INDEX(N(A:A<>""),0),0)) 後からB列を追加し、B列の値が空欄の場合は除外した上で 一番上の値を返すにはどうすれば良いでしょうか。 すみません、質問内容が間違っていました。 テーブル内に作ったリストでA列の文字列が同じものを次の関数でB列にカウントさせました。 =COUNTIF(INDIRECT("A"&1):[@A列],[@A列])) ここで、C列の値が空白の場合はB列のカウントから除外させたいのですが =COUNTIFS(INDIRECT("A"&1):[@A列],[@A列],INDIRECT("C"&1):[@C列],[@C列]<>"")) では駄目でした。 どうすれば良いでしょうか。 テーブルの列に関数を作って列全てに反映させてから 行を挿入すると関数もコピーされる場合とされない場合とがあるのですが 行挿入時に関数もコピー(反映)させるにはどうすればいいですか? ショートカットキーのCtrl+Alt+5が効かないんですが、みなさんの環境では如何ですか? OSはWindows10 バージョンは2016です >>286 タッチキーボードから入力しても何も起こらないんですが本当にキーボードが原因ですか? そちらでは効きますか? 確かマウス+キーボードと捜査が違う物が幾つかあったはず Ctrl+Alt+5かどうかは知らん このへんでも眺めてみては https://dekiru.net/article/12819/ en.key-test.ru このサイトで確認したら同時押しが認識されたので キーボードの故障ではなさそうです >>285 昔と同様に10キーの5はだめだけど、キーボードの5は大丈夫 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる