Excel VBA 質問スレ Part58
: デフォルトの名無しさん [sage] 2018/11/19(月) 06:47:24.99:Qq88xGOU ExcelのVBAに関する質問スレです コード書き込みや作成依頼もOK ※前スレ Excel VBA 質問スレ Part57 ttps://mevius.5ch.net/test/read.cgi/tech/1536583359/ : デフォルトの名無しさん [sage] 2018/11/19(月) 09:52:02.94:5k0nvJVR 乙 : デフォルトの名無しさん [sage] 2018/11/20(火) 22:35:35.36:HCcZ0ovU Dim Otimpo As Variant Set Otimpo = New Penis Otimpo.Insert Woman.Vagina : デフォルトの名無しさん [sage] 2018/11/20(火) 22:46:03.40:vvK8gepa 俺だったらInsertToメソッドにする : デフォルトの名無しさん [] 2018/11/22(木) 09:37:41.30:ZIGZU+Kk =LEFT("おつかれあかたあまや",4) : デフォルトの名無しさん [sage] 2018/11/22(木) 09:49:09.43:hMczrcoU 昭和の臭いプンプン : デフォルトの名無しさん [sage] 2018/11/22(木) 11:44:50.42:DvNJLexV 昭和なら $ 付けるだろ : デフォルトの名無しさん [] 2018/11/23(金) 09:01:48.81:pYaMx0la ややExcelと離れるのですが、他に適切な場所が見当たらないのでこちらで質問。 WordやPowerpointに、埋め込み、またはリンクで表示されているExcelの表やグラフについて、 1:ファイル名(フルパス、ないし相対パス) 2:表示されているシート名(またはシート番号) 3:表示されている表の範囲(A1からB20まで、みたいな) を、WordやPowerpointで動かすVBAから列挙する、みたいなのを作りたいと考えてます。 (1)についてはある程度(たまに取れないのがある)なんとかなるのですが、 (2)と(3)の手段が分からないでいます。 この辺を得る手段について、ご存じの方いましたら教えてください。 : デフォルトの名無しさん [sage] 2018/11/23(金) 10:13:26.49:NlhnMW/X 表示されているシート名 って要は現在アクティブなシートってことでしょ? ActiveSheet.Nameで取れるんじゃ? : デフォルトの名無しさん [sage] 2018/11/23(金) 11:15:52.26:OdmoxaxG やったことがないから保証できないが、 OLEObject.ObjectプロパティからOLEオブジェクトのコントロールを取得できるはず ここからExcelのオブジェクトモデル経由でシート名等は取れるかも : 8 [sage] 2018/11/23(金) 11:27:11.08:pYaMx0la ,10 そういえば、シート名はそれで取れますね。うっかりしてました。 ただ、Powerpointで表示されている、シート上の範囲( の(3) )がマジわからん。 ActiveSheetまでは到達出来るので、シート全体のデータは取れるのだけども、 表示範囲となるとどこを見れば良いのやら…… : デフォルトの名無しさん [sage] 2018/11/23(金) 16:52:45.93:NlhnMW/X 表示範囲っての意味がよく判らない。使用されている範囲ならUsedRangeプロパティだけどそうじゃない? : デフォルトの名無しさん [sage] 2018/11/23(金) 18:46:47.55:A5v+c7Q3 QueryTables.addを利用して取り込んだテキストデータを TextFileFixedColumnWidths = array(5,4,2) とVBソースに記述して5、4、2バイト目で区切ってエクセルに貼り付けしているのですが、 このarrayのカッコ内の値5,4,2の部分を1つのセル内に定義しておき、そこから取得して処理する方法を教えてください。(セル値を変えるだけで区切りバイトを変えられるようにしたいです) セル内の定義は下記のような感じの形式で実現できたらいいなと思っています。 5,4,2 または "5","4","2" など よろしくお願いします。 : デフォルトの名無しさん [sage] 2018/11/23(金) 18:47:07.61:pYaMx0la UsedRangeは、まさに「Excel上で利用されている範囲」になるので、ちょっと違う。 探しているのは、(WordとかPowerpointとか) 「被貼付側から見えている範囲」。 コピペを行うときにExcel上で範囲指定してる、まさにその範囲の情報が欲しいのです。 『広い範囲が使われているシート(埋め込みオブジェクト)の一部分だけが表示されている時、 その表示部分を特定する』がやりたいの。 : デフォルトの名無しさん [sage] 2018/11/23(金) 20:29:14.68:SJrbhhQk 3つパラメータがあるならそもそも3つのセルで管理すればいいんじゃないかと思うが、区切る回数も動的にしたいのかな? パラメーター記述用のセルに5,4,2と入力しておいて、コード内でSplit関数を使いそのセルの値をカンマ区切りで配列化するのが普通かな そうやって得たString配列の要素全てをCIntで型変換してInteger配列に入れ直せば、TextFileFixedColumnWidthsプロパティに代入できる : デフォルトの名無しさん [sage] 2018/11/23(金) 20:45:52.52:A5v+c7Q3 区切る回数も動的にしたいんです。 さっそく試してみます。ありがとうございます。 : デフォルトの名無しさん [sage] 2018/11/24(土) 07:26:12.22:XV/jbN3E 無事にやりたいことが実現できました。ありがとうございました。勉強になりました。 : デフォルトの名無しさん [sage] 2018/11/26(月) 18:21:38.61:jE4mmGCd ユーザーフォームのボタンでExcel以外のファイルを開くのにShell.Execute使ったんだけど、ボタンを押しても何も反応しない CreateObject("Shell.Application").ShellExecute "c:\test\test.pdf" : デフォルトの名無しさん [sage] 2018/11/26(月) 19:08:14.69:sSO4v+r+ 試してみたけど、そのコードで問題なく動くなあ : デフォルトの名無しさん [sage] 2018/11/26(月) 19:30:02.47:VtKrTehC デザインモードがオンになってるとかじゃね : デフォルトの名無しさん [sage] 2018/11/26(月) 20:06:27.80:c8QT25Tm 検証ありがとう! ちな標準モジュールに書くと普通に動く。 どうもユーザーフォームに書くとダメみたい : デフォルトの名無しさん [sage] 2018/11/26(月) 20:09:03.00:c8QT25Tm 違った ユーザーフォームじゃなくてユーザーフォーム内のボタンね : デフォルトの名無しさん [sage] 2018/11/26(月) 22:08:01.92:sSO4v+r+ ユーザーフォーム作ってボタン配置してボタンのOnClickにコード書いたけど問題ない : デフォルトの名無しさん [sage] 2018/11/26(月) 22:25:28.75:c8QT25Tm みんなマジか〜 環境は2010、2007ともにダメだった。 明日2016で試してみる。 ちなみにパスがフォルダ指定までなら動く。 もう意味わからん : デフォルトの名無しさん [sage] 2018/11/26(月) 22:57:14.49:sSO4v+r+ もしかしてpdfをダブルクリックした時に「このファイルを開くアプリ」の選択メニューが出てない? : デフォルトの名無しさん [sage] 2018/11/27(火) 08:58:52.14:TmwvOLJp すまぬすまぬ。実は開かないのは.xlsxや.xls。 さっきやったら.txtや.bmpに書き換えるとちゃんと動いた。関連付けがおかしいかと思ったけどファイルダブルクリックでexcelファイルは開く。 : デフォルトの名無しさん [sage] 2018/11/27(火) 09:23:34.69:OWqQZ565 さすがにExcelはOpen関数使えよ。。。 : デフォルトの名無しさん [sage] 2018/11/27(火) 11:44:24.61:Y7caogE6 やっぱりそうですよね、、 ありがとうこざいました! : デフォルトの名無しさん [sage] 2018/11/27(火) 21:03:19.26:JHhXTC3j VISTA32ビットのEXCEL2007で再現した ちなみにブレークポイントはってステップインさせたらちゃんと動いた : デフォルトの名無しさん [] 2018/11/28(水) 21:03:32.22:btdWGy6U 切り取り・コピーしようとしたら「クリップボードを開くことが」と表示されました 前までは正常に出来てたのに急にあんなになるなんて どうしたらなおるんですか 原因不明の謎の症状 : 30 [] 2018/11/28(水) 21:11:36.27:btdWGy6U のところ、再起動したら直りました 自己解決 : デフォルトの名無しさん [] 2018/11/28(水) 21:55:41.99:6iHSQiFE WorksheetFunctionを使うと遅くなると聞きました。セルで計算して取得したほうがいいですか? : デフォルトの名無しさん [sage] 2018/11/28(水) 22:15:02.98:T0n8cI1t 遅いと言っても、よほど大量のデータを処理しない限り大差ないから気にしなくていい : デフォルトの名無しさん [] 2018/11/28(水) 23:27:06.65:6iHSQiFE ありがとうございます : デフォルトの名無しさん [sage] 2018/11/30(金) 08:07:23.94:yuW+a+er workbook.Aのマクロから、workbook.Bのマクロパスワードを解除できますか? *パスワードは分かっています **windows10 / excel 2016 同じパスワードをかけた大量のファイルのマクロパスワード解除が必要になった為 : デフォルトの名無しさん [sage] 2018/11/30(金) 08:09:10.42:cHj05URw できるかと言えばできる。 : デフォルトの名無しさん [sage] 2018/11/30(金) 08:53:39.83:yuW+a+er ありがとうございます。 VBAでsendkeyでパスワード入れたいのですが、プロジェクトエクスプローラーのウィンドウで、目的のworkbook.Bを選択してパスワードウィンドウを開く事がうまくできないところです。 : デフォルトの名無しさん [sage] 2018/11/30(金) 09:06:54.20:cHj05URw いや、Sendkeysは絶対使っちゃいかんものNo.1だろ。 制御出来ないからな。 わかってて一過性のプログラムで使う以外に使うことは無い。 : デフォルトの名無しさん [sage] 2018/11/30(金) 11:07:00.94:yuW+a+er ご忠告ありがとうございます。 : デフォルトの名無しさん [sage] 2018/11/30(金) 12:03:29.38:LyLvfax5 MSDNライブラリでWorkbookオブジェクトのOpenメソッドの説明を詳しく読めば解決 : デフォルトの名無しさん [sage] 2018/11/30(金) 18:19:35.02:RELaXAo9 マクロのパスワード解除ってワークブックオープン関係なくね。 : デフォルトの名無しさん [sage] 2018/11/30(金) 18:57:50.86:cHj05URw そもそもマクロパスワ―ドってことはVBEを弄ることになるから普通はセキュリティ設定に引っかかる。 VBAでVBEを弄れる設定になってるなら、参照設定でVisualBasic for Applications Extencibilityを追加して頑張ることになるわけだけどセキュリティ皆無となって危険だぞ。 それにそのコードがウィルス判定されるかも。 : デフォルトの名無しさん [sage] 2018/11/30(金) 19:30:48.61:D2Lo7Qd2 この質問者が「解除」という言葉で言いたいのは、パスワードなしのファイルとしてファイルを再保存することじゃなくて、ただ単に読み取りパスワード付のファイルを普通に実行することだと思うぞ Sendkeysとか恐ろしいことを上で言ってるので : デフォルトの名無しさん [sage] 2018/11/30(金) 23:26:49.39:1+TlpALp プロジェクトエクスプローラーって言ってるのにそんなわけ無いだろ : 35 [sage] 2018/12/01(土) 07:37:11.82:0dTVd6NK マクロのロック解除です。 ワークブックと書いて混乱を招いてしまいました。 ファイルは開けます。 現状はマクロでVBAをアクティベートし、vbkeyで操作する方法で試してますが未だにうまく動かないです。 : デフォルトの名無しさん [sage] 2018/12/01(土) 12:13:55.48:bMs1CWzL VBAのsendkeyは不安定なので、vbsとかを経由しろとか聞いたことある気がする。ちょっと調べてみては? : 35 [sage] 2018/12/01(土) 12:16:20.34:0dTVd6NK ありがとうございます。 試してみます。 : デフォルトの名無しさん [sage] 2018/12/01(土) 12:20:42.98:TS4bNkMJ フォルダ内にある全てのtxtファイルをピボットテーブルで変換して一つのファイルに結合するにはどうしたら良いですか? : デフォルトの名無しさん [sage] 2018/12/01(土) 12:22:51.76:TS4bNkMJ 一つのテキストファイルあたりExcelの104万行を超えています : デフォルトの名無しさん [sage] 2018/12/01(土) 12:30:20.41:Yrektqt+ Accessに取り込んで104万件以下に整理してからExcelに読み込む : デフォルトの名無しさん [sage] 2018/12/01(土) 13:39:55.20:TS4bNkMJ Accessで一括に読み込めますか? : デフォルトの名無しさん [sage] 2018/12/01(土) 17:27:15.14:qC6lat5H vbsとか経由でも駄目だろ。 何が駄目かと言うと入力したい所にピンポイントで入力するわけじゃ無いところ。 直前に入力したい所にフォーカスを当てるとか工夫してる人もいるけど根本的によろしく無いんだよ。 動かしてる時に別の何かをクリックしたりするとそっちに入力されちまう。 改めて確認するけどVBAがパスワード保護されてコ―ド編集出来ない状態になっている。 パスワードは分かっていて手動で解除出来るけどブックが大量で解除と再設定が大変という問題? : デフォルトの名無しさん [sage] 2018/12/01(土) 17:45:25.58:qC6lat5H そのテキストファイルはどんなファイル? データベースのデータのようなものなの? その104万行というのは、そもそも全部必要なの? 全部必要じゃない、特にもし必要なのはごく一部というのだったら、テキストファイルとして開いて1行ずつ読み込んで、必要あるデータのみ抜き出すという方法が良いと思う。 全部必要だったらAccessを使うべきデータ量だな。 でも、そのデータをどんな風に扱いたいか分からないから一概には言えない。 : 35 [sage] 2018/12/01(土) 17:56:01.08:0dTVd6NK おっしゃる通りです。 マクロで大量に作ったマクロパスワードが同じファイルのパスワードを解除し、マクロを消すプログラムを作りたいです。 マクロを消すプログラムはマクロパスワード無しのファイルに関しては全てうまく動いています。 またエクセルファイルにはパスワードはかけていません。 過去に作ったエクセルファイルは残したままマクロを全て消せとの指令で必要となっています。 : デフォルトの名無しさん [sage] 2018/12/01(土) 18:47:27.12:X1CAEXrd xlsxで保存すればマクロは消えない? : デフォルトの名無しさん [sage] 2018/12/02(日) 12:24:29.74:RxJGbltM そんな大量のデータ、一行ずつ読んでたら日が暮れるぞ。 バイナリモードで開いてメモリの許す半範囲で読んで、末尾の改行までを消すの繰り返して読み込んだ方が遥かに早いよ : デフォルトの名無しさん [sage] 2018/12/02(日) 13:35:42.09:QrHhUpeR 100万行越えのデータは、まず複数列、複数シートを使って読み込んでみれば? 内容によっては固まって何もできなくなる悪寒しかないけど : デフォルトの名無しさん [sage] 2018/12/02(日) 17:24:20.84:L8bj4c7S 100万行が大量か? それはどんな100万行かによる。 100万個の改行だって100万行だ。 : デフォルトの名無しさん [sage] 2018/12/02(日) 17:27:05.82:L8bj4c7S が書いてるようにxlsxで保存するようなのは駄目なのか? : デフォルトの名無しさん [] 2018/12/02(日) 21:09:54.29:V0qE8100 ユーザーフォーム上のクリックボタンが、Tabで通過する分には何も起こらないのだけどカーソルキーで通過するとチェック入るのだけど、コード書いて制御するしかない? : デフォルトの名無しさん [sage] 2018/12/02(日) 22:14:16.48:KrKU+109 クリックボタンにチェックとは? : デフォルトの名無しさん [sage] 2018/12/03(月) 00:04:08.66:X8MytAwB EXCELのVBA使いたいのですが どうやったら起動できますか? 最初からEXCELにソフト入ってるんですか? : デフォルトの名無しさん [sage] 2018/12/03(月) 00:39:02.99:eKdLT8zi Microsoft Visual Basic for Applications(VBA)エディターが開きます。 Alt+F11 : デフォルトの名無しさん [] 2018/12/03(月) 07:02:37.21:F098t6Ls すみません、チェックボックスでした : デフォルトの名無しさん [sage] 2018/12/03(月) 19:46:40.74:zpf7CT60 xlsx保存し元ファイルを全て消すでやりたい事ができました。 ありがとうございます : デフォルトの名無しさん [sage] 2018/12/03(月) 23:49:02.49:Ks+qj00w フランス政府からマクロン消したら市民が泣いて喜ぶよね ありがとうございます : デフォルトの名無しさん [sage] 2018/12/04(火) 00:09:42.14:fkKXq52U まずは首を括れよ : デフォルトの名無しさん [sage] 2018/12/04(火) 06:14:33.41:Jf/aCYja 消えろ小僧 : デフォルトの名無しさん [sage] 2018/12/04(火) 09:00:31.20:F519qlgb "ab","bc","c d" みたいなcsvがあり、これを処理速度重視で読み込みたいんですがなにかいい方法無いですかね なんか配列操作で計算、集計して最後シート出力すると早いと思うので配列に入れたいんですが1行ずつの読み込みだとうまく行かずで困ってます fsoで全文読んでも改行されてますし… : デフォルトの名無しさん [sage] 2018/12/04(火) 09:15:39.52:TjlcF2tR めんどそう そんなんじゃ " のエスケープとかも考慮しなきゃいけないんでしょ? だけど気合い入れてアルゴリズムごりごり実装するのを勧める : デフォルトの名無しさん [sage] 2018/12/04(火) 09:18:52.95:FU2ewWox ボトルネックがFile I/Oならバイナリで全部読んでコンマでsplit ただし文字列変数の限界は2GBなのでファイルサイズに注意 : デフォルトの名無しさん [sage] 2018/12/04(火) 12:54:59.46:HOLQGFa9 どうでも良いけど1レコードの定義をちゃんとしないと膨大なカラムの1レコードデータになっちまうぞ。 バイナリ読み込みでやるのは確かに早いんだが、そこを気にする程のデータ量なのかなあ。 この間の100万行デ―タもサンプル作って読み込んだら10秒とかだったぞ。 : デフォルトの名無しさん [sage] 2018/12/04(火) 13:26:11.27:F519qlgb 全文読んだ後にレコード単位に分けてカンマ区切りで分けてーをしっかりアルゴリズム書くて感じですかね そこそこ面倒臭いですねこれ : デフォルトの名無しさん [sage] 2018/12/04(火) 13:31:22.51:nDNFtNox セルコピーでValudatonの中身までコピーする方法ってありますか? 愚直にコピーすると設定したプルダウン情報が消えてしまいます : デフォルトの名無しさん [sage] 2018/12/04(火) 17:53:21.87:eg0Zt3qJ エスケープなし、カンマのみ項目なし、改行のみ項目なしなら楽なんだけどね : デフォルトの名無しさん [sage] 2018/12/04(火) 18:44:19.91:F519qlgb 自己レス adodb使ったらなんかいい感じにいけました : デフォルトの名無しさん [sage] 2018/12/04(火) 23:45:07.95:foGY0MAA 外部のExcelマクロを呼び出し、その処理の中でMsgBoxが表示された場合、それを呼び出し元で認識する方法はありますか? Msgboxを操作したいとかではなく、表示されたということがわかればいいです : デフォルトの名無しさん [sage] 2018/12/05(水) 01:51:39.17:bmTXilR5 APIでHWNDを列挙 : デフォルトの名無しさん [sage] 2018/12/05(水) 08:11:01.31:j7wcFAGs 外部のExcelマクロというのが別プロセスのExcel上で動いてるマクロという意味なら方法はある。 内部でもExcelが落ちる可能性を承知するならある。 : デフォルトの名無しさん [sage] 2018/12/05(水) 18:51:03.67:cxhucZsa ,79 APIでの実現方法がよくわからなかったので、呼び出されるマクロに認識用のモジュールを追加することにしました ありがとうございました : デフォルトの名無しさん [sage] 2018/12/05(水) 22:21:05.50:LTu8VXCT 自己レス adodbも面倒臭かったacces無いんでcsvのデータ型判定の為にschma.iniみたいなの作る必要あったり… 元の文字コードとかbomとか考慮しないといけないけどworkbookのopen使ってマズかったらエラー出した方が早かったかも : デフォルトの名無しさん [sage] 2018/12/06(木) 08:13:12.56:5yG8Yqq9 いい肥やしになったと思います : デフォルトの名無しさん [sage] 2018/12/06(木) 23:32:22.39:O2YT1bAS 肥やしって具体的には何のこと? : デフォルトの名無しさん [sage] 2018/12/07(金) 08:39:50.57:a2+Odvtp 普通にOpenしてLine Inputした方が速くて簡単だったんじゃない? と思ったら文字コード?BOM? 最初の質問は何だったのか。 文字コード考えなきゃならんのなら、 最初から選択が限られるだろ。 : デフォルトの名無しさん [sage] 2018/12/07(金) 23:08:14.09:vEdbg58X まあでもsplitはないよな : デフォルトの名無しさん [sage] 2018/12/07(金) 23:45:43.79:ny7N65D8 データ内の改行やカンマを正しく解釈するためにモジュール自作してる : デフォルトの名無しさん [sage] 2018/12/08(土) 08:49:31.99:D25PXYri データ内のダブルクォーテーションもあるで : デフォルトの名無しさん [sage] 2018/12/08(土) 10:23:21.41:qbpmcynn この手のことはだいたい同じ事を先に考えている人がいるから、 参考にするなりDLして利用するなりすれば、やりたいことは秒で完成させられる 理解するのはまた別で、ちゃんとソース読めな話になるけど。 たとえば、「VBA CSV BAS」でググって即出るヤツだとこんなとか。 ttps://github.com/sdkn104/VBA-CSV : デフォルトの名無しさん [sage] 2018/12/08(土) 11:33:49.23:KOgxZmAl Range("C1:C10") = "=A1+B1" とセルに式を埋め込むと自動で A2+B2、A3+B3 とやってくれますが WorksheetFunctionで上と同じ事を1行で簡単に書くことってできますか? うまい方法思いつかないのでいつも 関数埋め込み→値貼り付けで式を消す とやってます WorksheetFunctionのループは式の埋め込みより遅かったです : デフォルトの名無しさん [sage] 2018/12/08(土) 15:59:33.39:/nD5g8zA わざわざVBAを使って、最後に値貼り付けするぐらいなら、俺ならVBAで計算して結果だけ書き込む For r = 1 To 10 cells(r, 3) = cells(r, 1) + cells(r, 2) Next 式がワークシート関数バリバリでVBAで再現するのが面倒なら、最後の値貼り付けをVBAで書く set r = Range("C1:C10") r.Copy r.PasteSpecial Paste:=xlPasteValues : デフォルトの名無しさん [sage] 2018/12/08(土) 16:47:33.14:X2RnV3YS 俺ならVBAで各セルに計算式埋めるけどな : デフォルトの名無しさん [sage] 2018/12/08(土) 17:13:31.83:Zw8nZFqz Range("C1:C10").Formula = "=A1+B1" Range("C1:C10").Value=Range("C1:C10").Value : デフォルトの名無しさん [sage] 2018/12/08(土) 18:00:32.80:FvhEiENk 人に教えてもらう分際で、一行でとか注文つけてんじゃねーよ。 : デフォルトの名無しさん [sage] 2018/12/08(土) 19:19:47.59:I01ncySI ワークシートか配列へ代入したり配列をワークシートに直接貼り付けたりって技いつ頃から一般的になった? なんか20年前からやってたという人がいて本当かよと思ったんだが。 : デフォルトの名無しさん [sage] 2018/12/08(土) 20:28:45.94:/nD5g8zA 特定の個人が知ってたのと、一般的かどうかなんて全然関係ないじゃん ExcelもVBAも20年以上前からあるんだし、知ってても不思議じゃない : デフォルトの名無しさん [sage] 2018/12/08(土) 20:53:05.77:dkUbxCqg ああごめんなさい 「そんなの20年前から一般的だったよ」みたいなニュアンスで言われたんですよ。 自分としてはここ2〜3年で知られた新しめのテクニックだと思ってたんで、「マジか?」と。 : デフォルトの名無しさん [sage] 2018/12/08(土) 21:00:40.14:/nD5g8zA 20年前のことは知らんけど、さすがにここ2〜3年てことはない もっと昔から知られてた : デフォルトの名無しさん [sage] 2018/12/08(土) 21:04:04.90:Ac8D4eVv ですね。 そもそもいちいちセル移動して操作なんて、トロくさくてやってられん。 Google Apps Scriptなんかでも配列で操作なんて、速度稼ぐ為に普通に使う枯れたテクニック。 あまりにもセル操作という初歩だけが広まった弊害だね。 : デフォルトの名無しさん [sage] 2018/12/08(土) 21:07:43.53:KOgxZmAl A いつも自分がやっているやり方 Range("C1:C10000") = "=A1+B1" Range("C1:C10000").Copy Range("C1:C10000").PasteSpecial Paste:=xlPasteValues B 90案 For r = 1 To 10000 Cells(r, 3) = Cells(r, 1) + Cells(r, 2) Next C 92案 Range("C1:C10000").Formula = "=A1+B1" Range("C1:C10000").Value = Range("C1:C10000").Value D 配列 計算元の配列= Range("A1:B10000") For i = 1 To 10000 計算結果格納配列(i, 0) = 計算元の配列(i, 1) + 計算元の配列(i, 2) Next i Range("C1:C10000").Value = ans E 半分配列 For r = 1 To 10000 計算結果格納配列(r, 0) = Cells(r, 1) + Cells(r, 2) Next Range("C1:C10000").Value = ans A0.035 B0.265 C0.031 D0.015 E0.062 : デフォルトの名無しさん [sage] 2018/12/08(土) 21:09:26.57:KOgxZmAl 時間(秒) A 0.035 B 0.265 C 0.031 D 0.015 E 0.062 配列は頭がごちゃごちゃして苦手なんだけどやっぱ配列かなー いつものは書くのが楽だけど見栄えがあんま良くない Range("C1:C10000") = "=A1+B1"の部分を数式残さずWorksheetFunction一括で書けないかなーと思ってた みなさんどうも : デフォルトの名無しさん [sage] 2018/12/08(土) 21:12:06.71:KOgxZmAl 書き間違い ans→計算結果格納配列 : デフォルトの名無しさん [sage] 2018/12/08(土) 22:34:44.30:Pds2yprW Range("c1:c10") = Evaluate("=a1:a10+b1:b10") : デフォルトの名無しさん [sage] 2018/12/08(土) 23:08:03.54:KOgxZmAl 速くて簡潔 今までの中で一番早い Evaluate知らないので勉強してみます。有難う。 : デフォルトの名無しさん [] 2018/12/08(土) 23:21:36.60:Q+l9Re6e あーなんかいいのがあったはずだと思っていたがEvaluateかーー くやしいから Range("c1:c10") = [a1:a10+b1:b10] : デフォルトの名無しさん [] 2018/12/09(日) 07:19:28.94:Pe0BknB8 データを蓄積、変更して管理するシステムをVBAで作るとして、普通、データとプログラムを分けるよな? : デフォルトの名無しさん [] 2018/12/09(日) 08:55:53.41:BPsncq85 分けるけど、わざわざそういう質問するってことは現状データをBookに蓄積先してる状況なのかな? 入出力画面をExcel & VBAで作って、データはDBに蓄積するってのがこの場合の模範解答だと思うが。 : デフォルトの名無しさん [sage] 2018/12/09(日) 21:01:53.98:F2zjByp1 配列数式ってのは大昔からあったな。エクセルはVBA書かないと標準機能ではクロス集計が 面倒くさいダメダメ君だった。「条件付き合計式ウィザード」なんていう冴えないシロモノに失望して : デフォルトの名無しさん [] 2018/12/10(月) 12:24:50.65:F1/sCBz9 おまえが2〜3年前に知ったからってなんで勝手に一般化して皆そうだと思うんだよ : デフォルトの名無しさん [sage] 2018/12/11(火) 08:00:45.59:VzVuR/sH みんな、落ち着いて聞いてくれ。 間も無く2019年だ。2019だぞ? 配列に突っ込んで一括処理するのは、少なくともEXCEL98から使われてきた手法だ。 既に20年経過してやがる。 : デフォルトの名無しさん [sage] 2018/12/11(火) 08:30:34.19:jr4KaA92 ٩(๑`^´๑)۶\(^-^ ) ヨシヨシ : デフォルトの名無しさん [sage] 2018/12/11(火) 08:41:05.40:mN+cBX2v 空白行が複数ある範囲から、空白行を除いて配列に取り込むのはどうやるのが効率がいい? 条件 ・行内は完全に空白かそうでないかで中途半端にデータが入ってるところはなし ・空白行を除いたデータ総数は300前後で最大で16程度に分割されている ・空白行は連続することもある 一行一行調べるより、データの塊の上下の行番号を調べるのが正解な気がするんだけど : デフォルトの名無しさん [sage] 2018/12/11(火) 08:55:39.61:OAAPkOpt そのデータがワークシート上にあるんなら、オートフィルターかければ? VBAで1行で書けるぞ : デフォルトの名無しさん [sage] 2018/12/11(火) 09:27:01.56:zUaOIyWC > データの塊の上下の行番号を調べる それ一行一行調べないとわからないんじゃね? 普通に一気に配列に読み込んで空白行を詰める処理を入れればいいかと フィルタ掛けた結果を一気に配列に読み込むってできたっけ? : デフォルトの名無しさん [sage] 2018/12/11(火) 11:43:07.63:U/EFAptV fjだかのExcel会議室では配列がホットな話題になったよ t.Tanaka氏とかもコテハンで議論に参加してさ なつかしいなあ : デフォルトの名無しさん [sage] 2018/12/11(火) 11:50:12.79:s7r8QuRW お っ さ ん : デフォルトの名無しさん [sage] 2018/12/11(火) 12:15:58.68:/u4ZG0F2 当時からおっさんだったら、今頃じーさんかも知れないぞ。 : デフォルトの名無しさん [sage] 2018/12/11(火) 14:13:54.04:mN+cBX2v 下からCtrl↑で止まったセルの行番号を取得するを繰り返せば毎行調べなくて済む オートフィルターで絞った結果を可視セルだけ選択しても、取り込まれるのは左上だけになるから無理だね 一行一行調べる羽目になる やるなら作業シート作ってコピペしてから取り込むんだけだ、それはやりたくない訳で : デフォルトの名無しさん [sage] 2018/12/11(火) 14:39:45.96:zUaOIyWC > 下からCtrl↑で止まったセルの行番号を取得するを繰り返せば毎行調べなくて済む それはそうだけど速いかどうかは状況次第だね > VBAで1行で書けるぞ って方法があるみたいなことを書いてるので聞いただけ : デフォルトの名無しさん [sage] 2018/12/11(火) 20:47:54.18:r2my7w49 元々、どういう考えでが言ったのかは分からんけど、配列に取り込むまでを1行って言ってたのかなあ。 オートフィルタをかけるコードが1行という意味じゃないかな。 だからといって、そこからどうするんだ?とは思うけどさ。 : デフォルトの名無しさん [sage] 2018/12/11(火) 21:00:32.57:zUaOIyWC 元々は > 空白行が複数ある範囲から、空白行を除いて配列に取り込むのはどうやるのが効率がいい? なので、フィルターだけの事を言われても… : デフォルトの名無しさん [sage] 2018/12/11(火) 21:34:59.21:OAAPkOpt クリップボード経由でデータを一気に取得、オートフィルタにも対応 ※最小設定FM20.DLLが必要 Sub Macro1() ActiveSheet.Range("A1:C10").Copy With New MSForms.DataObject .GetFromClipboard str = .GetText End With MsgBox str End Sub : デフォルトの名無しさん [sage] 2018/12/11(火) 21:35:27.33:OAAPkOpt 参照設定 : デフォルトの名無しさん [sage] 2018/12/11(火) 21:40:19.21:r2my7w49 そりゃそうだけど、を読む限り1行ってのはオートフィルタだけについて言ってるように受け取る方が自然じゃん。 だから、そこからどうするんだという感想になるわけ。 そもそもは配列に取り込むことなんて想定してないかもしれない。 空白があって見にくいのを何とかしたいんだろうとか、勝手に先読みして配列に取り込むという元のお題をほったらかしとか。 そもそも300行程度のデータならどんな方法でも良いんじゃないかと思う。 そんなんで思い悩むのは無駄だよ。 : デフォルトの名無しさん [sage] 2018/12/11(火) 21:51:43.64:zUaOIyWC ガイジなのかな? : デフォルトの名無しさん [sage] 2018/12/11(火) 22:40:05.46:r2my7w49 君が? それとも? : デフォルトの名無しさん [sage] 2018/12/11(火) 22:53:52.01:8DZhL+mg それこそVariant型配列にでもぶっ込めば手っ取り早いし処理もそれなりに速そう : デフォルトの名無しさん [sage] 2018/12/11(火) 23:25:52.21:mBAHWwo2 UI Automationのレイトバインドって、どうやればいいんでしょう? レジストリ調べてもクラスID出てこないし・・。 : デフォルトの名無しさん [sage] 2018/12/11(火) 23:34:38.12:r2my7w49 基本的に出来ない。 : デフォルトの名無しさん [sage] 2018/12/12(水) 00:19:46.28:3KU1fzXl 参照設定は出来るのに、CreateObjectは不可なんてのがあるんですか? : デフォルトの名無しさん [sage] 2018/12/12(水) 06:08:42.05:yHW8d60g 自覚がないのは可哀想 : デフォルトの名無しさん [sage] 2018/12/12(水) 09:43:38.09:F+70e5KM ある。 : デフォルトの名無しさん [sage] 2018/12/12(水) 09:44:36.67:F+70e5KM まず、日本語の勉強をしような。 : デフォルトの名無しさん [sage] 2018/12/12(水) 12:29:40.76:4PEjGm8G どこから日本語とか出てくるんだろう? 日本語ができないという自覚はあるってことなのか? w : デフォルトの名無しさん [sage] 2018/12/12(水) 19:01:00.09:pifCGzoS グラフ作成マクロ作ったんだけど結構面倒くさくない?慣れの問題? 特に細かなフォーマットとか云々がめんどい それに出力シートのセルいじられて(1行目削除)出力セルがズレたせいでフォーマット崩れたとか言われて頭痛いんだけどどう対処するのが良いのこれ : デフォルトの名無しさん [] 2018/12/12(水) 20:01:12.49:K6Ng+wlm 使用方法まとめたドキュメント作ってないなら作成者が悪い。 作ってるなら碌に読まないで文句いってる使用者が悪い。 作り方次第で解決するとは思うが。 : デフォルトの名無しさん [sage] 2018/12/12(水) 20:02:06.59:aZC5ZPlw ルーチンにはルールが必要やで : デフォルトの名無しさん [sage] 2018/12/12(水) 22:32:28.50:3KU1fzXl 逃げる。 いや、マジで。 フォーマットを壊す人ような人の依頼を受けると碌なことない。 どうしてもやらなきゃダメなら、 ちょっとでも崩れたら、エラーメッセージが出るようにする。 あなた壊しましたね。直さないと出力できませんよ的な。 : デフォルトの名無しさん [sage] 2018/12/12(水) 23:25:41.76:YxATkhEB シートとブックを保護する : デフォルトの名無しさん [sage] 2018/12/13(木) 09:08:24.41:UfF+3F/y 出来たグラフをPDFにしてそれを渡す : デフォルトの名無しさん [sage] 2018/12/13(木) 09:12:33.11:LhgdcJ19 人の話が理解出来てないから、日本語という言葉が出て来るんじゃないの。 : デフォルトの名無しさん [sage] 2018/12/13(木) 12:28:02.78:yiVhwKQv > 人の話が理解出来てないから 既にガイジかよって指摘されてるだろ w そもそも配列に取り込むという要件明記されてるのにオートフィルターなら1行で書けるとか頓珍漢にも程がある : デフォルトの名無しさん [sage] 2018/12/13(木) 21:18:33.38:WIhtQMzU シーブックがなんだって? : デフォルトの名無しさん [sage] 2018/12/13(木) 22:36:46.58:X2R1LlWK CreateObject("Excel.Application").ExecuteExcel4Macro("CALL(DLL, 名前, ""JJ"", variant型の配列)") これにvariant型の配列を渡す場合はどうすればいい? OとかKとか入れてもダメなんですけど。 普通に呼べとか言わないで。 : デフォルトの名無しさん [sage] 2018/12/14(金) 01:30:05.29:dZAIZmaz あのぉ… : デフォルトの名無しさん [sage] 2018/12/14(金) 07:22:07.04:CUJ1nMvt 不可能 1セルずつしか処理できないのが特徴だし : デフォルトの名無しさん [sage] 2018/12/14(金) 09:13:11.97:GTuXeJsU 想像した通りだ。 日本語勉強しような。 俺はではないという基本的なことも無視かね? には全く賛同出来ないが、かといっては君の要件に対して1行で書けると言っているとは限らないと読み取れると言っている。 1行で書けるというのは、その直前のオートフィルタをかけるという部分を受けてのものとも読み取れるのが日本語の解釈だ。 もちろん、君の要件に対してのものというのを全面的に否定するものでもない。 どっちにも受け取れるのが日本語の曖昧さだ。 : デフォルトの名無しさん [sage] 2018/12/14(金) 12:34:42.08:8Omm9ucp > には全く賛同出来ないが、かといっては君の要件に対して1行で書けると言っているとは限らないと読み取れると言っている。 別に俺が出した要件じゃねーけどな 敵は1人に見える病気かな? w フィルター云々はいいとして要件にそぐわない事書いて意味あるんか? って話な フィルター掛けときゃすげー楽になると言うならまだしもとか恥の上塗りにしかなってないだろ ここまで説明しないとダメなの? : デフォルトの名無しさん [sage] 2018/12/14(金) 19:29:44.65:GTuXeJsU >別に俺が出した要件じゃねーけどな 全く、馬鹿らしいがそんなことは想定済みだ。 こういう場合、要件出したのが君だろうが違かろうが「君の要件」と書いておけば通じるという想定だ。 それまでの君の発言を見て要件出した奴かどうかなんて調べるのがめんどうということだ。 >フィルター云々はいいとして要件にそぐわない事書いて意味あるんか? って話な そんなことは要件出した奴が判断することだし、俺はそんな所にレスしたわけじゃない。 単純に1行が要件そのものに対してとは限らんと言ってる。 それに「VBAで1行で書けるぞ」が要件のことを言っていなくてもトータルで要件にそぐうこともあり得る。 フィルタのコードに1行、他に何十行かで要件を満たしているかもしれないわけだ。 >フィルター掛けときゃすげー楽になると言うならまだしもとか恥の上塗りにしかなってないだろ =とは限らん、というか違うと思うわけだが、イコールとは限らない以上、の意図が「フィルター掛けときゃすげー楽になる」という可能性を排除できない。 つまり、君の言う「まだしも」の可能性が残っている。 それに、俺が書いたようにが要件にそぐわないものを出した可能性もある。 したがって、「1行で書ける」というのが要件そのものに対してではなくフィルタをがける処理のみに対してである可能性は十分ある。 これは日本語でのやり取りなら十分あり得ることだ。 : デフォルトの名無しさん [sage] 2018/12/14(金) 19:35:29.16:GTuXeJsU >ここまで説明しないとダメなの? ちなみに、君のその説明、一番最初から分かってるから。 その君の主張が甘いんじゃねということを言ってるのが最初からの俺の主張だぞ。 : デフォルトの名無しさん [sage] 2018/12/14(金) 19:36:43.15:GTuXeJsU アンカー間違えた。 はへのレスな。 : デフォルトの名無しさん [sage] 2018/12/14(金) 20:29:48.28:8Omm9ucp > つまり、君の言う「まだしも」の可能性が残っている。 なら早く出せよ w 出せない時点で中身のない長文乙 にしかならんよ : デフォルトの名無しさん [sage] 2018/12/14(金) 21:50:27.31:GTuXeJsU ??? 出すのはであって俺では無いし、それにこの議論が始まるまでの話だから今さら出す、出さない関係無くのの時点で1行が要件に対してと決めつけたのは間違いなんだが。 : デフォルトの名無しさん [sage] 2018/12/14(金) 22:24:25.69:OczD5cRe セルじゃなくてvariant型の配列。 : デフォルトの名無しさん [sage] 2018/12/14(金) 22:48:04.67:yDEitqc6 お前に出せないのはわかってるよ w 出せないのに > つまり、君の言う「まだしも」の可能性が残っている。 とかアホでしょ? って話な そもそもどころかの時点で > フィルタ掛けた結果を一気に配列に読み込むってできたっけ? でがおかしいことを指摘してる : デフォルトの名無しさん [sage] 2018/12/14(金) 23:06:35.41:GTuXeJsU ??? まだ分かって無いのか? の意図がまだ分かっていない時点ではが正しい可能性が残っていると言っている。 残っている以上、をおかしいと決めつけたお前がおかしいということだ。 出す必要なんて最初からないんだよ。 : デフォルトの名無しさん [sage] 2018/12/14(金) 23:13:37.60:GTuXeJsU >そもそもどころかの時点で > フィルタ掛けた結果を一気に配列に読み込むってできたっけ? でがおかしいことを指摘してる がフィルタをかけることだけについて1行と言っているのなら―気に読み込まなくてもは正しい可能性が残る。 つまり、お前の指摘は間違っていることになる。 がおかしいというのなら正しい可能性が残らないように指摘しなければならない。 : デフォルトの名無しさん [sage] 2018/12/14(金) 23:48:38.10:yDEitqc6 で? 役に立たない長文書いてもなんの解決にもならんよ 恥の上塗り重ねてるだけ w : デフォルトの名無しさん [sage] 2018/12/15(土) 03:21:06.31:WK8Eb1ay なんだ、反論できんのか? だったら何も言うことは無い。 まともに日本語が理解出来ないのは哀れだねえ。 : デフォルトの名無しさん [sage] 2018/12/15(土) 07:16:14.22:lJT07BrA > が正しい可能性が残っていると言っている。 バカなの? の内容が間違ってるとか言う話じゃなくて「頓珍漢」だと言ってるの まあはさらに頓珍漢だけどな > まともに日本語が理解出来ないのは哀れだねえ。 ブーメラン過ぎる w : デフォルトの名無しさん [sage] 2018/12/15(土) 08:17:58.44:B6remLfl いつになったら場違いだと気付くのだろうか。。。 : デフォルトの名無しさん [sage] 2018/12/15(土) 09:04:38.64:U64Nbokg でさ、ここ質問スレ 乱闘なら他でやれ、クズ共 : デフォルトの名無しさん [sage] 2018/12/15(土) 10:21:31.76:WK8Eb1ay アホ。 頓珍漢ではない可能性が残っている。 お前が勝手に決めつけているだけだ。 : デフォルトの名無しさん [sage] 2018/12/15(土) 10:31:11.19:WK8Eb1ay だいたい、俺の意見はお前と近いんだよ。 お前みたいな甘さが無いだけで。 だから「そこからどうするんだ」という発言が出てる。 頓珍漢だろうとは思ってるの。 確定してないから決めつけてないだけで。 だいいち、頓珍漢だとしてもお前の決めつけが間違ってるのは変わらないだろう。 頓珍漢だなんてのは反論になってないな。 だから日本語を勉強しようなという話になる。 : デフォルトの名無しさん [sage] 2018/12/15(土) 10:57:25.02:0SCAvoVT 頓珍漢の根拠まで書いてあるのに何を言ってるんだこのアホは w >> 空白行が複数ある範囲から、空白行を除いて配列に取り込むのはどうやるのが効率がいい? > なので、フィルターだけの事を言われても… : デフォルトの名無しさん [] 2018/12/15(土) 12:42:24.61:lWJaBIbu いつまでネコパンチ打ち合うつもりやねんおまえら : デフォルトの名無しさん [sage] 2018/12/15(土) 14:45:59.06:945ViHWv 次の質問が来ないからじゃね : デフォルトの名無しさん [sage] 2018/12/15(土) 15:45:43.01:n3n4s8WM じゃ、ひとつ Excel VBAで、Google OAuth認証などをやってるが、Clien_IDやSecretはコード中に書くとしても、取得したAuth CodeやAccess_Token、Refresh_Tokenなどはどこに安全に格納出来るか? .NETアプリやAccessのようにappconfigや仕舞えるテーブルが無いので、皆どうしているのかね? : デフォルトの名無しさん [sage] 2018/12/15(土) 15:53:11.37:mgmsvi+C そんなものをVBAで作らない もしどうしても必要があるなら外部のコンソールアプリを呼び出す形にする : デフォルトの名無しさん [sage] 2018/12/15(土) 16:03:58.72:VvS+qBfB VBAで何をやろうとしてるんだよ 何のためにそんな実装するのか詳しく : デフォルトの名無しさん [sage] 2018/12/15(土) 16:17:18.77:U8VjJ+lV app.configとかテーブルとかが安全だと思ってるなら、 セルに書いといて保存でもテキストファイル書き出しでも好きにすればいいんじゃね : デフォルトの名無しさん [sage] 2018/12/15(土) 16:44:01.14:2qRdp2bE > appconfigや仕舞えるテーブル そんなのでいいなら適当なファイルとかブックのドキュメントプロパティに入れときゃいいんじゃね? : デフォルトの名無しさん [sage] 2018/12/15(土) 16:57:49.47:WK8Eb1ay バーカ の書き方ではフィルタだけとは限らない。 だけで終わりとは限らない書き方だろうが。 あの書き方では、その後に何かあるか、それとも後は察しろという風にも読み取れる。 だから俺は「そこからどうするんだ」という発言になる。 たぶん頓珍漢だろうけど、そこからどうするか聞いてからじゃないと確定出来ないからだ。 それに頓珍漢で逃げたいかもしれんが、頓珍漢かどうかは反論にならない。 頓珍漢だとしても1行が要件全体にかかってると決めつけたお前の解釈が甘いことには変わりが無い。 : デフォルトの名無しさん [sage] 2018/12/15(土) 18:04:57.01:lJT07BrA お前がどう思うかなんてどうでもいい はの要件を満たしてない頓珍漢なレスであることに変わりない まあ、続きのつもりかどうかは知らんがみたいな斜め上のレスをするアホもいるけどな w : デフォルトの名無しさん [sage] 2018/12/15(土) 18:13:07.03:zDjD9XpS 結局、お前らがここで、くだらない議論してる間抜けを招いてる元凶ってにはよくわかったよ。 まともな回答もできん、技術力ないアホってのもなwww : デフォルトの名無しさん [sage] 2018/12/15(土) 18:28:50.08:lJT07BrA > 元凶ってにはよくわかったよ。 煽ろうとしてカミカミとか恥ずかしすぎるww : デフォルトの名無しさん [sage] 2018/12/15(土) 18:33:30.22:WK8Eb1ay つまりお前の日本語解釈能力の低いことが確定ということだ。 甘いねえ。 はの後だ。 お前の指摘の後でもある。 の存在はお前の頓珍漢だという決めつけを補強しない。 なぜならより以前にお前は決めつけをしてるんだからな。 因みに俺はじゃないんで別にが頓珍漢でも全くかまわん。 : デフォルトの名無しさん [sage] 2018/12/15(土) 18:45:26.64:lJT07BrA > つまりお前の日本語解釈能力の低いことが確定ということだ。 根拠のない勝利宣言 w 低能にありがちな行動 : デフォルトの名無しさん [sage] 2018/12/15(土) 20:16:24.25:VvS+qBfB なんだこいつ病気か : デフォルトの名無しさん [] 2018/12/15(土) 20:42:55.07:NkuNHsZU 病気の人に失礼だろそれは : デフォルトの名無しさん [sage] 2018/12/15(土) 22:10:19.68:WK8Eb1ay 根拠? 既に何度も示してお前が反論出来なくなっているわけだが。 は要件全てではなくオートフィルタのみについて1行と言っていた可能性がある時点でお前の決めつけは間違っている。 頓珍漢かどうかは関係ない。 が頓珍漢でもお前は間違ってる。 : デフォルトの名無しさん [sage] 2018/12/15(土) 22:12:08.06:WK8Eb1ay 何故、お前が間違った決めつけをしたのか? それはおまえの日本語解釈能力が低いからだ。 : デフォルトの名無しさん [sage] 2018/12/15(土) 22:33:13.95:7RBFgqMT お客さんが多いなあ : デフォルトの名無しさん [sage] 2018/12/15(土) 23:20:05.72:lJT07BrA > は要件全てではなくオートフィルタのみについて1行と言っていた それが頓珍漢だって言ってるのに w 続きがあるかもしれないから頓珍漢じゃない可能性があるとかバカかよ そんなこと言い出したらなんとでも言えるわ : デフォルトの名無しさん [sage] 2018/12/16(日) 07:19:47.75:48kCZeZq 単なる罵り合いを見せつけられるくらいなら過疎ってるほうがよっぽど良い : デフォルトの名無しさん [sage] 2018/12/16(日) 15:01:54.86:wWzCJETE バカ? 頓珍漢でもお前の間違いは変わらんと言ってる。 反論出来ないからといって見当違いばかりだな。 : デフォルトの名無しさん [] 2018/12/16(日) 15:15:50.29:Waa1ZwFh この罵り合いって一人で自演やってるの? それとも馬鹿が2人もいるの? : デフォルトの名無しさん [sage] 2018/12/16(日) 15:21:47.19:7UXd2BE0 もう言ってることが無茶苦茶 > 反論出来ないからといって見当違いばかりだな。 またブーメランかよ w : デフォルトの名無しさん [sage] 2018/12/16(日) 15:31:07.45:wWzCJETE 頓珍漢でもお前は間違ってるのは認めるのかい? : デフォルトの名無しさん [sage] 2018/12/16(日) 15:34:57.02:wWzCJETE はオートフィルタのみについて1行と言った可能性があるのに要件全てに対してだと決めつけたのは間違いであり、が頓珍漢かどうかに関係なくの発言は思慮が浅いと思うんだが、それについては反論出来ないということでOK? : デフォルトの名無しさん [sage] 2018/12/16(日) 15:38:49.65:wWzCJETE 見当違いなのは、頓珍漢かどうかに関係なく間違いだと言ってるのに、いつまでたっても頓珍漢で押し通そうとしてるからなんだが。 : デフォルトの名無しさん [sage] 2018/12/16(日) 15:47:14.35:7UXd2BE0 もしかして > そんなこと言い出したらなんとでも言えるわ っていう意味すら理解できないガイジ? w : デフォルトの名無しさん [sage] 2018/12/16(日) 16:18:10.73:wWzCJETE そんなことは無い。 日本語には2通りの解釈が出来る場合があって、は明確にその場合だ。 どんな場合でも複数の解釈が出来るとは限らんし、普通に複数の解釈が出来る場合に決めつけをすることは無い。 で、お前は間違えを認めるのか? : デフォルトの名無しさん [sage] 2018/12/16(日) 16:23:40.16:7UXd2BE0 2通りの解釈? 後付していいなら2通りどころかなんとでも解釈できるように書けるぞ > そのデータがワークシート上にあるんなら、オートフィルターかければ? > VBAで1行で書けるぞ でも、〇〇した方がもっといいけどな ってか? w : デフォルトの名無しさん [sage] 2018/12/16(日) 18:04:23.80:wWzCJETE ??? 本当に日本語ダメなんだな。 後付けなんてしてない。 のみで2通りに解釈できるんだが。 それを理解出来ずに見当違いの言い訳するから「日本語勉強しような」と言われるんだ。 : デフォルトの名無しさん [sage] 2018/12/16(日) 18:20:18.12:7UXd2BE0 お前が誰か知らんけど > だけで終わりとは限らない書き方だろうが。 とか書いてたアホがいたっけな w : デフォルトの名無しさん [sage] 2018/12/16(日) 18:55:56.11:wWzCJETE また、見当違いか。 だけで2通りの解釈ができ、それをお前が理解出来なかったのは認めるのかい? : デフォルトの名無しさん [sage] 2018/12/16(日) 19:12:31.97:7UXd2BE0 > だけで終わりとは限らない書き方だろうが。 とか書いてたアホとは他人なの? なら黙っててね それとも恥ずかしくてごまかそうと必死なのかな? ww : デフォルトの名無しさん [sage] 2018/12/16(日) 19:15:43.10:wWzCJETE まず、お前が間違ってたのを認めるかどうかが先だ。 お前の間違いは1つだけでは無いので話を変えて逃げようとしても無駄だ。 後付け云々についてはその後だ。 : デフォルトの名無しさん [sage] 2018/12/16(日) 19:18:42.74:wWzCJETE 悔しいのは分からんでも無いが、客観的に見て自分に間違いがあるなら認めような。 間違いが無いなら別の話に持ってこうとせずに真正面から反論すべきだな。 : デフォルトの名無しさん [sage] 2018/12/16(日) 19:29:40.20:7UXd2BE0 ごまかそうと必死すぎて笑える まずは > だけで終わりとは限らない書き方だろうが。 > とか書いてたアホとは他人なの? に、答えなよ : デフォルトの名無しさん [sage] 2018/12/16(日) 20:08:06.24:iM0z/gpL 誤魔化そうとしてるのはお前。 一番最初の話はの解釈をお前が間違ったのかどうかだろ。 の時点の話だ。 : デフォルトの名無しさん [sage] 2018/12/16(日) 22:36:05.00:7UXd2BE0 お前がどう言おうと単体ではの要件を満たさない頓珍漢なレスである事実は変わらんよ 残念だったな w : デフォルトの名無しさん [sage] 2018/12/16(日) 23:06:44.08:jPkme8um バー力。 頓珍漢でもお前は間違ってると言ってるだろ。 つまりお前はまだ何一つ反論をしていない。 お前が間違っているという俺の指摘に何ーつ反論していない。 このまま間違いを認めるのかねw : デフォルトの名無しさん [sage] 2018/12/16(日) 23:17:12.24:7UXd2BE0 > 頓珍漢でもお前は間違ってると言ってるだろ。 お前は何を言ってるんだよ、が頓珍漢なら俺が正しいことになるんだが… マジでバカすぎる w : デフォルトの名無しさん [sage] 2018/12/17(月) 03:10:52.43:Lv/9aVPQ ならないんだが。 何度も言ってるのに無視かよ。 よっぽど頭が悪いんだな。 はオートフィルタのみについて1行と言っている可能性がある以上、配列に読み込む部分を含めて1行と決めつけて解釈したお前は間違い。 それは頓珍漢なこととは別の問題だ。 : デフォルトの名無しさん [sage] 2018/12/17(月) 03:13:56.86:Lv/9aVPQ 物事をきちんと分けて考えられないのもこのバカの特徴だな。 : デフォルトの名無しさん [sage] 2018/12/17(月) 07:18:53.33:QtVZQcqx > はオートフィルタのみについて1行と言っている可能性がある だからそれが頓珍漢だって言ってるのに… 人の話を無視して論破されてる話を何度も繰り返すのは低能にありがちな行動だけどな w > 物事をきちんと分けて考えられないのもこのバカの特徴だな。 ブーメラン乙 : デフォルトの名無しさん [sage] 2018/12/17(月) 07:34:27.78:KD4HX3We まだやってんのw : デフォルトの名無しさん [sage] 2018/12/17(月) 07:54:15.41:QtVZQcqx 2018/12/17(月) 03:10:52.43 ID:Lv/9aVPQ 夜中の3時とかよほど悔しかったみたいよ w : デフォルトの名無しさん [sage] 2018/12/17(月) 09:21:28.94:Lv/9aVPQ 頓珍漢でもお前は間違ってるんだよ。 全く反論になってないと言ってるだろうに。 が頓珍漢では無い場合 →お前は間違ってる が頓珍漢な場合 →お前は間違ってる お前の発言「だからは頓珍漢なんだよ」 つまり、お前は間違ってる 日本語ワカリマスカ? : デフォルトの名無しさん [sage] 2018/12/17(月) 09:26:32.36:Lv/9aVPQ 冷静に見ればよっぽど悔しく見えるのは両方だ。 劣勢だからって同意を求めようとするな。 : デフォルトの名無しさん [] 2018/12/17(月) 12:18:18.33:5M+6Ly1a どっちも劣勢なんやからいい加減諦めろやw : デフォルトの名無しさん [sage] 2018/12/17(月) 12:22:59.36:QtVZQcqx > が頓珍漢な場合 > →お前は間違ってる 一体どういう思考回路なんだろ? ガイジを装ってウヤムヤにしようと思ってるのかな? そんなことしなくても既にガイジ並の思考能力しかないことはバレてますよ w ごめんな、流石に俺は夜中の3時にレスするほど悔しくはないんだよ… w : デフォルトの名無しさん [sage] 2018/12/17(月) 12:32:00.75:Lv/9aVPQ 俺が物事をきちんと分けて考えられないというなら、何を分けて考えられなかったかを示す必要がある。 俺はお前が何を分けて考えられていなかったか示してるぞ。 適当にブ―メランなどと言っても根拠0じゃ何の説得力も無い。 : デフォルトの名無しさん [sage] 2018/12/17(月) 12:35:07.44:Lv/9aVPQ バーカ 頓珍漢だとしてもお前は2通りの解釈が出来なかっただろうが。 オートフィルタのみ1行(の可能性がある)なのにお前は要件全てだと勘違いして決めつけた。 : デフォルトの名無しさん [sage] 2018/12/17(月) 12:38:15.60:Lv/9aVPQ プッ。 この期に及んで悔しくないなどと言っても笑われるだけだぞ。 誰もそんな話信用しないわ。 : デフォルトの名無しさん [sage] 2018/12/17(月) 19:29:53.15:QtVZQcqx もうアホには何度言っても無駄なんだろうな w 2通りの解釈どころかその後に付け加えるなら何でもありあり 付け加えないならの要件を満たさない頓珍漢なレス で、世間では普通は書いてもない事を付け加えて解釈なんてしない (まあ一時話題になった忖度とかはあるけどな) 要するに単体では頓珍漢なレスで確定なんだよ オートフィルターが1行とか言われても、はあ?それがどうしたって話になるだけ うんうん、君が夜中の3時にレスしてると言う「事実」があるだけだね w : デフォルトの名無しさん [sage] 2018/12/17(月) 20:17:28.92:Lv/9aVPQ 頓珍漢でもお前は間違ってると何度言っても、頓珍漢で押し通そうとするのが笑える。 単体で2通りの解釈が出来ると言っても後付けすればなどと見当違いなことを言う。 この期に及んでも何ーつ反論していないバカ。 : デフォルトの名無しさん [sage] 2018/12/17(月) 20:52:45.62:QtVZQcqx > 頓珍漢でもお前は間違ってる 根拠も示せずに何度もほざかれても困るし > 単体で2通りの解釈が出来る 解釈書いてみ まさかこの期に及んでオートフィルターガーとか言うのはやめれくれよ > この期に及んでも何ーつ反論していないバカ。 またブーメランかよ… 好きだねー w : デフォルトの名無しさん [sage] 2018/12/17(月) 21:32:44.47:aWnNi0b/ まだいるのかよ… : デフォルトの名無しさん [sage] 2018/12/17(月) 21:34:11.65:Lv/9aVPQ 何度も書いてる。 1行はオ―トフィルタを掛けるコードが1行と解釈できる。 何度書いても理解出来ないバカ。 日本語に弱いから仕方ないのかねえ。 ハンバーグステーキを作ろうとしてる奴に「付け合わせのマッシュポテトはじゃかりこにお湯を注げば。 1分でできるぞ。」 と言った時、こいつの脳内ではハンバーグステーキが1分でできることになってしまうのだ。 : デフォルトの名無しさん [sage] 2018/12/17(月) 22:41:30.96:yChZzMqc > 1行はオ―トフィルタを掛けるコードが1行と解釈できる。 それがなんの意味もない頓珍漢なレスだ って何度も書かれてるのに w > 何度書いても理解出来ないバカ。 > 日本語に弱いから仕方ないのかねえ。 お前がな > ハンバーグステーキを作ろうとしてる奴に「付け合わせのマッシュポテトはじゃかりこにお湯を注げば。 > 1分でできるぞ。」 > と言った時、こいつの脳内ではハンバーグステーキが1分でできることになってしまうのだ。 意味不明な例え乙 これぞ頓珍漢だな w : デフォルトの名無しさん [sage] 2018/12/17(月) 23:23:37.71:Lv/9aVPQ バカは何度でもループする。 「頓珍漢でもお前は間違い。」に対しての反論が「頓珍漢だ」じゃ反論にならない。 救いようがない程のバカw : デフォルトの名無しさん [sage] 2018/12/17(月) 23:25:29.19:Lv/9aVPQ そりゃ日本語が理解出来ないんだから意味不明だろうなw : デフォルトの名無しさん [sage] 2018/12/17(月) 23:57:53.98:yChZzMqc > バカは何度でもループする。 自覚はあるんだ w >> 頓珍漢でもお前は間違ってる > 根拠も示せずに何度もほざかれても困るし は、ガン無視だし どう反論しろと… : デフォルトの名無しさん [sage] 2018/12/17(月) 23:59:31.81:yChZzMqc ハンバーグ作ろうとしてる奴にドヤ顔でマッシュポテトの作り方語るバカがなにかほざいてるな w : デフォルトの名無しさん [sage] 2018/12/18(火) 02:09:02.31:0uF82Fsr ハンバーーーーーーーグ! : デフォルトの名無しさん [] 2018/12/18(火) 06:46:14.46:mQMHvFDr 木枯しを吹き飛ばす熱い闘いが続いております 5ちゃんねら〜の意地と意地とのぶつかりあい 書くのをやめたレスバトラーに待ちうけるのは「敗北」という恥辱にまみれた二文字のみ 「止められないレスがそこにある!」 それでは引き続きおたのしみ下さい バカ vs バカ ファイッ!!!!!!!! : デフォルトの名無しさん [sage] 2018/12/18(火) 08:11:45.42:C3RGy1+P 2通りに解釈できるものをお前は理解出来なかったのが根拠と何度も書いているが。 とお前の両方が頓珍漢ということは普通にあり得る。 したがってが頓珍漢だというお前の主張はお前が頓珍漢であることの反論にはならない。 : デフォルトの名無しさん [sage] 2018/12/18(火) 08:17:07.32:C3RGy1+P マッシュポテトはハンバーグの付け合わせだから元々作ることになっている。 ハンバーグの部分であるマッシュポテトの時短への言及であり、1分とはその部分にかかる時間である可能性がある。 全体にかかる時間ではないかもしれないと考えるのがまともな日本人だ。 お前は日本人じゃ無さそうだから理解出来んかもしれんが。 : デフォルトの名無しさん [sage] 2018/12/18(火) 08:34:19.90:/UA4EEmu ハンバーグの付け合せにマッシュポテトしか思いつかないとかどんだけ発想が貧しいんだよ w 知識も知能もスッカスカやん : デフォルトの名無しさん [sage] 2018/12/18(火) 09:04:54.27:C3RGy1+P 話をすり替えようとしても無駄だねえ。 単なる例に何言ってんの? : デフォルトの名無しさん [sage] 2018/12/18(火) 10:39:29.20:o0ORzhLh 二人のやりとりでここまで日を跨いで続くのってあまり見ない気がするけど、やっぱりム板住人気質ってことなんだろうな。 頭はあまり良くないのにその自覚が乏しく、細かいことに異常に拘る。自分も少なからずそういう傾向があるから、気をつけないとな……。 : デフォルトの名無しさん [sage] 2018/12/18(火) 11:37:31.53:qVCHqInm すごく昔っぽい : デフォルトの名無しさん [sage] 2018/12/18(火) 12:16:58.67:/UA4EEmu 頓珍漢な例を出してごめんなさい だろ? w : デフォルトの名無しさん [sage] 2018/12/18(火) 19:13:23.83:3O+U276/ 今日も元気やな〜。俺は風引いて寝込んでるからそのパワーが羨ましいよ w : デフォルトの名無しさん [sage] 2018/12/18(火) 20:17:01.94:C3RGy1+P また新たに日本語を理解出来ない事象が発生かよ。 発想が貧しいなどと今までの話とは関係ない方向へ持ってこうとしたことに対して単なる例と言ったのであって、例としては全くもって的確だ。 : デフォルトの名無しさん [] 2018/12/18(火) 20:17:38.62:mQMHvFDr バカ共もさすがに恥を知ったんかなw : デフォルトの名無しさん [] 2018/12/18(火) 20:18:08.69:mQMHvFDr と思たらまだ続いとったwナイスバカw : デフォルトの名無しさん [sage] 2018/12/18(火) 22:18:11.50:ncFc1flt まだやるの? > 決めつけたのは間違いなんだが。 とか言う奴が > マッシュポテトはハンバーグの付け合わせだから元々作ることになっている。 とかどの口で言ってるんだよ w 配列への格納とオートフィルターが常に関係するわけじゃないのと同じでハンバーグとマッシュポテトは常に関係するわけじゃない それぐらいは理解できるよね? なお反論したいなら > マッシュポテトはハンバーグの付け合わせだから元々作ることになっている。 が正しいと言う根拠持ってきてからにしてくれ : デフォルトの名無しさん [sage] 2018/12/18(火) 23:27:31.75:fQRWG6oh > まだやるの? たぶんこのスレ皆が君ら2人に対して同じことを思ってるよ。 これだけ思う存分、頭の悪さを見せ付けることができたんだからもう満足だろ? まだ足りないの? : デフォルトの名無しさん [sage] 2018/12/18(火) 23:49:22.42:ncFc1flt なぜ同じレベルに落ちてまで参入するかな : デフォルトの名無しさん [sage] 2018/12/19(水) 00:29:39.75:L6rD7CwA しかもオートフィルタとか : デフォルトの名無しさん [] 2018/12/19(水) 01:44:12.73:sYwMlaDi すみません、先輩方教えて下さいIF 文がうまくいかず困っています。 For分のループの中で IF文の条件が一致したら 処理A、処理B、と20個くらい連続で複数実行したいのですが。 条件が一致しなくても処理Bからが動いてしまいます。 どのように記述すればよいのでしょうか。 EXCELの勉強サイトで質問をしても、条件1個くらいしか実施しないものしかなく困っております。 : デフォルトの名無しさん [sage] 2018/12/19(水) 02:24:14.86:38k2t73z For ... If 条件 Then 処理A 処理B ... End If Next ってことか? Select Case かElseIf使えって話か? : デフォルトの名無しさん [sage] 2018/12/19(水) 02:27:25.69:esnyd6IN Ruby なら、a が1 の時は、処理1・2、 aが2 の時は、処理A・B、 上記以外は、処理X・Y if a == 1 処理1 処理2 elsif a == 2 処理A 処理B else 処理X 処理Y end : デフォルトの名無しさん [] 2018/12/19(水) 02:40:37.42:DnYaqc+Z まず今のコード晒せよ みんなエスパーじゃないんだから : デフォルトの名無しさん [sage] 2018/12/19(水) 06:44:44.72:sYwMlaDi さん そのような処理が行いたいです。 cではそのような処理は可能でした。 ruby ではない、rubyが動く環境ではないので : デフォルトの名無しさん [sage] 2018/12/19(水) 07:34:58.43:BIch1OKH コードがわからない限りどうしようもない : デフォルトの名無しさん [] 2018/12/19(水) 08:02:19.27:+DSMRKxP if文のthen で 処理複数行実行できますか?というだけのつもりでしたが。 コード準備してまた質問します。 ありがとうございました。 : デフォルトの名無しさん [sage] 2018/12/19(水) 08:10:35.82:meuITI5l ??? 例だと言ってるのにw 例を挙げたのは俺だから決めつけも糞もない。 日本語の問題なのか悔しくて冷静な判断もできないのか分からんが相変わらず頓珍漢な所に絡んでくるねw ハンバーグを作るという要件に対してはマッシュポテトを元々作るということになっていると思った。 それでじゃかりこにお湯を注げば1分という発言になった。 それをお前は頓珍漢と断ずるには、その発言の内容を理解しなければならない。 内容が全く分からなかったら頓珍漢かどうかも分からないからな。 そのお前の理解(ハンバーグが1分でできると解釈)が頓珍漢なんだろうが。 従ってが頓珍漢かどうかに関係なくお前が頓珍漢なのが確定なんだよ。 : デフォルトの名無しさん [sage] 2018/12/19(水) 08:15:13.01:6uBXCGRB ThenからEnd Ifまでは処理をいくつ書いてもすべて実行される If 条件 Then 処理1 処理2 処理3 End If : デフォルトの名無しさん [sage] 2018/12/19(水) 08:19:00.70:rGeO8V+1 > ハンバーグを作るという要件に対してはマッシュポテトを元々作るということになっていると思った。 何度書いても頓珍漢なものは頓珍漢なままだよ > なお反論したいなら >> マッシュポテトはハンバーグの付け合わせだから元々作ることになっている。 > が正しいと言う根拠持ってきてからにしてくれ に答えられないなら黙ってた方がいいぞ w : デフォルトの名無しさん [sage] 2018/12/19(水) 08:27:36.44:meuITI5l >配列への格納とオートフィルターが常に関係するわけじゃないのと同じでハンバーグとマッシュポテトは常に関係するわけじゃない それぐらいは理解できるよね? 常に関係しなくても全くかまわないんだよ。 普通の人間は相手が何かを言った時、それはどういう意味か理解しようとする。 理解しないと頓珍漢かどうかも分からないから当然のことだ。 常に関係するわけじゃなくても、の頭の中ではハンバーグの付け合わせにマッシュポテトを考えたのだろうくらいは想像する。 そういう想像も全くせずに頓珍漢だというなら1分に言及することなく最初から頓珍漢だと言うだろう。 そこでお前はお前の理解の元に「じゃがりこにお湯を注いだくらいでハンバーグが1分で出来るの?」と発言したのと同じ状態になっている。 俺はそのお前の理解の元がおかしいのではないかと言っている : デフォルトの名無しさん [sage] 2018/12/19(水) 08:30:26.96:meuITI5l 頓珍漢であってもお前は「じゃがりこにお湯を注いだくらいでハンバーグが1分で出来るの?」と発言した状態になっている。 この発言が正しいのか? : デフォルトの名無しさん [sage] 2018/12/19(水) 12:22:13.52:wuMW/q40 なんでプログラム板住民は機械言語じゃなくて自然言語の言葉尻を捉えて追求したがるの? : デフォルトの名無しさん [sage] 2018/12/19(水) 12:31:57.08:rGeO8V+1 > 普通の人間は相手が何かを言った時、それはどういう意味か理解しようとする。 だからで > フィルタ掛けた結果を一気に配列に読み込むってできたっけ? って確認してる それに対してみたいな頓珍漢なレスが来たんだが w はマジで意味不明だから無視するね : デフォルトの名無しさん [sage] 2018/12/19(水) 12:56:12.77:meuITI5l 相変わらずのバカっぷり。 お前ので「(要件を満たすのに)VBAで1行で書けるぞ って方法があるみたいなことを書いてるので聞いただけ」という発言に対して俺は「の発言の1行とは(オートフィルタを掛けるのに)VBAで1行で書けるぞ」という意味なのでは?聞いたんだが。 : デフォルトの名無しさん [sage] 2018/12/19(水) 17:12:30.63:rGeO8V+1 > (オートフィルタを掛けるのに)VBAで1行で書けるぞ だからその回答になんの意味があるんだよ? って何度も書いてあるんだが 意味があるというならその意味を書いてみなよ : デフォルトの名無しさん [sage] 2018/12/19(水) 17:42:15.83:kLNFuq6V 相変わらず何の臆面もてらいもなくRubyを持ち出すヴァカ w : デフォルトの名無しさん [sage] 2018/12/19(水) 18:26:58.94:meuITI5l 意味が有ろうが無かろうがお前の解釈が間違いだと言ってる。 意味が無かったらお前の間違いは無くなるのか? 無くならねえよ。 : デフォルトの名無しさん [sage] 2018/12/19(水) 18:39:33.72:meuITI5l 元々のやり取りは以下の通り。 「VBAで1行で書けるぞ」 (お前)「フィルタ掛けた結果を一気に配列に読み込むってできたっけ?」 (俺)「1行とはフィルタ掛ける部分のことを言ってるんじゃない?」 (お前)「要件とは違うフィルタだけのことを言われても」 (俺)「そうだけど、で言ってる1行はフィルタだけと受け取る方が自然」 (お前)「ガイジなのかな?」 どっちがガイジだよ : デフォルトの名無しさん [sage] 2018/12/19(水) 18:41:10.55:GtWYIo2s vbaでcsv出力するとしたら色々やり方あるけど何が良いんだろう fso? : デフォルトの名無しさん [sage] 2018/12/19(水) 19:02:08.13:rGeO8V+1 > 意味が有ろうが無かろうがお前の解釈が間違いだと言ってる。 > 意味が無かったらお前の間違いは無くなるのか? > 無くならねえよ。 根拠出さないと何度繰り返してもそれこそ「意味ないぞ」w 誰も自然かどうかなんて聞いてないからな ガイジかもしれないと思うのは当たり前のこと : デフォルトの名無しさん [] 2018/12/19(水) 20:15:44.96:As82n4u7 くだらない言い争いの元ってこれなのか? :で区切れば1行で書けるだろ。 お前ら馬鹿か? : デフォルトの名無しさん [sage] 2018/12/19(水) 21:21:27.33:38k2t73z Thenのあとに続けて同じ行に命令書いてないか? Thenで改行したら、End If(かElse)まで条件判定で実行されるぞ : デフォルトの名無しさん [sage] 2018/12/19(水) 22:17:38.71:uZ99WTE6 あれは確かに糞仕様といっていいね : デフォルトの名無しさん [sage] 2018/12/19(水) 22:22:43.60:meuITI5l 根拠は何度も出している。 日本語が不自由なお前が理解出来て無いだけ。 そりゃお前は自然かどうかは聞いてないさ。 お前が聞いたこと以外を言うとガイジになるなら皆がガイジはお前と言うだろう。 : デフォルトの名無しさん [sage] 2018/12/19(水) 22:34:20.70:Ra+okmqw シートは回転できないでしょうか? マリオカートの地面みたいな感じで。 : デフォルトの名無しさん [sage] 2018/12/19(水) 23:00:26.30:6uBXCGRB Excel単独ではできない : デフォルトの名無しさん [] 2018/12/19(水) 23:22:19.99:DnYaqc+Z カメラ機能で貼り付けて回転させればワンチャン : デフォルトの名無しさん [sage] 2018/12/19(水) 23:48:46.06:v1yTSLob outputもあるよ : デフォルトの名無しさん [] 2018/12/20(木) 00:16:14.50:JEb4hZ4L バカとバカの死闘もう決着ついたんか?バカ勝った? : デフォルトの名無しさん [sage] 2018/12/20(木) 06:48:12.04:As7dWUw1 > 根拠は何度も出している。 > 日本語が不自由なお前が理解出来て無いだけ。 ん? 2通りの解釈ガーってやつのこと? どう解釈しても頓珍漢なことに変わりないと何度も書いてるし、そもそもその2通りの解釈すら具体的に提示されてない > そりゃお前は自然かどうかは聞いてないさ。 > お前が聞いたこと以外を言うとガイジになるなら皆がガイジはお前と言うだろう。 会話の中でいきなり聞いてもないことを喋りだす? お前がコミュ障であることはわかったよ w : デフォルトの名無しさん [sage] 2018/12/20(木) 08:04:34.66:5qyubQfm どうしょうも無いバカ。 頓珍漢でもお前は間違いと言ってるだろ。 その根拠も既に何度も書いてる。 2通りの解釈も何度も書いてる。 オ―トフィルタを掛ける処理のみを1行と解釈するのと要件全てを満たす処理に1行と解釈するのの2通りだ。 日本語か通じないバカ。 、、、、、、 : デフォルトの名無しさん [sage] 2018/12/20(木) 08:05:15.91:5qyubQfm 、、、、で提示してるわ。 アンカー多すぎて怒られる程提示してる。 : デフォルトの名無しさん [sage] 2018/12/20(木) 08:11:10.39:5qyubQfm 会話のやり取りとして関係有るなら聞かれたこと以外を話すのは全くおかしくない。 少なくともとのやり取りをおかしいというならガイジはお前だろう。 : デフォルトの名無しさん [sage] 2018/12/20(木) 08:32:01.59:As7dWUw1 > オ―トフィルタを掛ける処理のみを1行と解釈 要件を満たさない頓珍漢な回答 > 要件全てを満たす処理に1行と解釈 それかと確認したらより頓珍漢ながしゃしゃり出てきた w いずれにせよ質問者の要件満たしてないクズ解釈 > 日本語か通じないバカ。 お・ま・え だよ > 会話のやり取りとして関係有るなら聞かれたこと以外を話すのは全くおかしくない。 お前はあえて無視してるみたいだけどで関係性を問うてるからその解釈は無理がある : デフォルトの名無しさん [sage] 2018/12/20(木) 09:21:52.23:5qyubQfm まだ分かってないのかよ。 お前がが頓珍漢かどうかを判定するところでお前はもう間違っている。 ということはお前はが頓珍漢かどうかも判定出来ていないということだ。 だから結果的にが頓珍漢だったとしてもお前も頓珍漢なんだよ。 お前は間違った判断の元にを頓珍漢と言ってる。 >普通に一気に配列に読み込んで空白行を詰める処理を入れればいいかと に対して「空白行を詰める処理を入れれば」の文言を理解出来ずに、配列に空白行が残るなとどしてお前の案を頓珍漢と断じることに問題は無いのか? 文言を理解出来ない方が頓珍漢だろう。 これと同じでお前のを頓珍漢だとする根拠が間違ってる。 : デフォルトの名無しさん [] 2018/12/20(木) 09:43:04.50:uzBoRH9c ttp://https://youtu.be/HjJjqSjTJwY この人の頭いい自慢、笑いがとまらない(ワラ 自画自賛のみの動画。 自分が恥ずかしくならないのか? たぶん恥ずかしい動画と気づいたらすぐ消すだろうが今はそれに気づいていない。 とにかく笑えます。 : デフォルトの名無しさん [sage] 2018/12/20(木) 12:23:32.88:As7dWUw1 > お前がが頓珍漢かどうかを判定するところでお前はもう間違っている。 根拠のない妄想乙 > ということはお前はが頓珍漢かどうかも判定出来ていないということだ。 妄想に基づく頓珍漢な解釈乙 > だから結果的にが頓珍漢だったとしてもお前も頓珍漢なんだよ。 もう論理も何もない幼児が喚いてるレベル > お前は間違った判断の元にを頓珍漢と言ってる。 それ、お・ま・え > に対して「空白行を詰める処理を入れれば」の文言を理解出来ずに、配列に空白行が残るなとどしてお前の案を頓珍漢と断じることに問題は無いのか? バカなの? 書いてあって理解できないことと、書いてもないことは全然違う話 そんな理解力もないから > これと同じでお前のを頓珍漢だとする根拠が間違ってる。 なんて頓珍漢な結論で玉砕するんだよ w : デフォルトの名無しさん [sage] 2018/12/20(木) 12:50:33.53:5qyubQfm 根拠は既に何度も書いているのに理解出来ないバカ。 反論出来ないからもうそれでやり過ごそうとする意図がミエミエ。 もうお前の根拠無いは通じない。 根拠はあると言ってるし、場所も言っている。 その根拠がおかしいというならわかるが無いじゃ話にならん。 ところで全く笑わせてくれるが、お前の発言こそ全部ブーメランだ。 >それ、お・ま・え プッ。 俺はを頓珍漢だなんて断じて無いんだが。 日本語ワカリマスカ? 全然違う話ではない。 間違った判断の元に相手を断じれば、結果的に頓珍漢でも頓珍漢でなくても間違いだ。 書いてある、書いてないは関係ない。 この例は、お前の主張通りだと断じる側が頓珍漢で間違った判断をすれば断じられる側が頓珍漢になってしまうのか?という例だ。 2通りの解釈ができなかったお前がを頓珍漢と断じてもダメということだ。 : デフォルトの名無しさん [] 2018/12/20(木) 16:14:40.53:bktnWAv8 馬鹿の馬鹿による馬鹿同士の罵り合い : デフォルトの名無しさん [sage] 2018/12/20(木) 17:25:31.33:g4q3VPrO これ何日連続でやってんの? : デフォルトの名無しさん [sage] 2018/12/20(木) 17:43:06.63:XT76bUiU からなら10日間かな。 は(このレスを含まないで)コメント数44件になっているw : デフォルトの名無しさん [] 2018/12/20(木) 17:56:31.30:2i7dcD7b (このレスを含まないで)のアスペ感w : デフォルトの名無しさん [sage] 2018/12/20(木) 18:37:50.96:As7dWUw1 > 2通りの解釈ができなかったお前が まだ言ってるの? お前はわざと無視してるけどそんな可能性はで確認してる が回答すれば良かったものをガイジのがしゃしゃり出てきて頓珍漢なレスしただけだろ w : デフォルトの名無しさん [sage] 2018/12/20(木) 18:42:03.57:dp1AZAWh このスレをこれで埋め尽くすまでじゃね? w : デフォルトの名無しさん [] 2018/12/20(木) 20:10:52.84:2i7dcD7b もう相当飽きとるでおまえみたいなバカがおもろいんは一時的なもんやし : デフォルトの名無しさん [] 2018/12/20(木) 22:31:27.95:/FsMMWOI VBAエンジニアって宣言するのって恥ずかしいことなのかな? ツイッターのWEB屋達からは苦笑されるし、現場でもVBAは簡単的な扱いで あまりいい意味で捉えられないように感じる 経歴的にVBA触ってた時間が長いし、 Windows と相性良いし、 VBAなんで叩かれてるんだろう? : デフォルトの名無しさん [] 2018/12/20(木) 22:38:23.73:2i7dcD7b webパーはバカやからおいとくとしても VBAエンジニアとゆうてもうたら言語としてのVBAをメンテナンスしとるエンジニアと思われるやろ そこはただのエンジニアでええねん開発言語として主にVBAつことるゆうだけで てかVBA叩いとるのこのスレにおるプロさんゆうバカな連中だけやぞw : デフォルトの名無しさん [sage] 2018/12/20(木) 23:05:37.29:rQxzM92i ロックマン作れるレベルなら、バカにされないんじゃないの? : デフォルトの名無しさん [sage] 2018/12/20(木) 23:13:35.65:7HwS24Ld 恥ずかしいんじゃなくて、根本的に間違ってるんだよ アプリの開発にはVBAは適してないし、普通は使わない ちょっとでも複雑なことをしようとするとAPIが必須になるし、ツールも貧弱で開発の効率が悪いから そして、ワークシートに付属のマクロを書くだけの人はエンジニアと呼べるレベルにないことが多い まあVBAで作られた社内アプリもあちこちで見た事あるけど、とにかく結果さえ出ればいいって感じでひどいもんだった 体裁の整ったアプリも作れないことはないけど、それこそVBAでは無駄に手間がかかるだけで、ようするに言語(道具)の選び方が適切じゃない : デフォルトの名無しさん [sage] 2018/12/20(木) 23:17:37.85:7HwS24Ld 趣味ならいいけど一般的に商品はVBAで作るわけにいかない 同じ物がVB.netならもっと少ない手間で作れるんだから、開発コストの無駄遣いになる : デフォルトの名無しさん [sage] 2018/12/20(木) 23:19:19.18:7HwS24Ld 「趣味でシステムエンジニアやってます」というのは成立しないと思うのは俺だけか? 趣味の一つとして認知されてるんなら、ここまで俺が書いたことは完全にひっくり返ってしまう : デフォルトの名無しさん [sage] 2018/12/20(木) 23:22:10.52:7HwS24Ld 別に国家資格が必要なわけじゃないから「俺は(VBA)エンジニアだ」と名乗るのは自由 聞いた人がどう思うか、どう思われるかはわからない : デフォルトの名無しさん [sage] 2018/12/21(金) 00:33:22.33:ykBrDntQ VBAは、あくまでOffice付属のマクロ言語なので、そこに何十年(最大24年)もしがみついてるとかだと、 自己紹介でそうと言われたら、叩くまではないにしても、「はぁ」で流しはするかも知れない。 他の色々出来る中で、「VBAも触れます」なら、構えられることもないんじゃないかな。 : デフォルトの名無しさん [sage] 2018/12/21(金) 00:45:40.95:t4pJ79vS 情報処理資格を受かった学生が「こんなの誰でも受かりますよ」って言うけど、 10年以上受からない奴は「いや、そんな簡単じゃないよ」って答える 会社では、新人・老害の会話が噛み合わないw そういう老害が新人に教えるから、矛盾だらけw 勉強していない奴は、システムを組めない。 何も知らんからw データ処理に適さない、表示情報が入った、Excel, PDF を成仏させる供養寺を、 住職(エンジニア)が開催してるw : デフォルトの名無しさん [sage] 2018/12/21(金) 01:07:43.82:KP9XHOoX 普通にプロとしてやってる人なら、言語仕様とライブラリ構成さえわかれば、どんな言語でも一定の結果は出せるもんだ VBAだって言語の一つとして、文法や演算子、変数タイプ、組み込み関数なんかが把握できればプログラムは書けて当たり前なんだよ : デフォルトの名無しさん [sage] 2018/12/21(金) 02:33:59.15:j+w4FFhE バ−カw お前が確認したのはお前の1通りの解釈を元に一気に配列に読み込めるかどうかだけだ。 本来、以下のようにすべきところを Function Check112(strHatsugen As String) As String If strHatsugen="要件全てを1行" Then Check112="頓珍漢" Else If strHatsugen="オ−トフィルタのみ1行" Then Check112="頓珍漢" End If End Function お前のコードは以下の通りだ。 Function Check112(strHatsugen As String) As String If strHatsugen="要件全てを1行" Then Check112="頓珍漢" End If End Function お前のコードではstrHatugen="オートフィルタのみ1行"の場合、戻り値は"頓珍漢"とならない。 : デフォルトの名無しさん [sage] 2018/12/21(金) 03:18:22.04:KP9XHOoX 空白を取り除いて配列に入れるのって、結局どうやるのが一番シンプル? マルチステートメントはとりあえず無しとして、作業シートを使って3行までは短縮できたけど (セル範囲が決め打ちだからできたとは言えないかな Sheets("Sheet1").Range("A:C").AutoFilter Field:=1, Criteria1:="<>" Range("A1:C5").Copy Destination:=Sheets("Sheet2").Range("A1") ary1 = Sheets("Sheet2").Range("A1:C3") : デフォルトの名無しさん [sage] 2018/12/21(金) 05:00:28.02:PkTs+Gix 夜中まで必死に考えたんだろうな… w : デフォルトの名無しさん [sage] 2018/12/21(金) 07:57:42.03:zXpLrdoZ 他の言語と比べて微妙だから vbaでも出来るけど他の言語ならもっと楽 なんで使わないの言語使えないの?て思考する人が一定数いるから : デフォルトの名無しさん [sage] 2018/12/21(金) 08:20:20.78:j+w4FFhE 普段から寝るのはあんなもんだ。 実際のところ、俺も「普通に一気に配列に読み込んで空白行を詰める処理を入れればいいかと」だね。 でも、データ総数300とかじゃどんなやり方でも良いし、気にしない。 効率を気にするなどと言っていても、実際は他で大きなロスしてても気にしない奴多数。 動かした所で大きなロスをしてる所がデータ読み込み部分と分かってから考えれば良い。 俺は一気に配列に読み込むのに慣れてるし、それで早いからそうするのが普通なだけで。 そもそもこういう場合でよくよくやりたいことの詳細を聞くと配列に取り込む必要が無かったりする場合も多い。 : デフォルトの名無しさん [sage] 2018/12/21(金) 08:22:45.52:j+w4FFhE あと、コードの量を減らすのはあまり意味が無い。 速度のためにコードの量はかなり増えることがある。 : デフォルトの名無しさん [sage] 2018/12/21(金) 08:32:12.60:choQhZIj 誰でも知ってるようなことでドヤ顔ww : デフォルトの名無しさん [sage] 2018/12/21(金) 15:58:03.36:HaYV4Ucy 突っ込みが幼稚 : デフォルトの名無しさん [sage] 2018/12/21(金) 20:47:54.84:GEdmC2dK VBとVBAを間違えてるやつがいるよな : デフォルトの名無しさん [sage] 2018/12/21(金) 22:54:11.09:PkTs+Gix : デフォルトの名無しさん [sage] 2018/12/22(土) 04:42:53.90:LntJy5xX アンカーを重ねて煽るのは幼稚 : デフォルトの名無しさん [sage] 2018/12/22(土) 06:45:30.74:FmWZGIo3 : デフォルトの名無しさん [sage] 2018/12/22(土) 21:23:35.57:P36khfsB アンカーだけで煽った気になるのは幼稚 : デフォルトの名無しさん [sage] 2018/12/23(日) 00:54:04.25:9AXglOVX : デフォルトの名無しさん [sage] 2018/12/23(日) 09:47:19.69:qHW9w8NX : デフォルトの名無しさん [sage] 2018/12/23(日) 10:45:49.13:lGbB3Xz8 : デフォルトの名無しさん [] 2018/12/23(日) 14:14:36.79:52OagQlj バカvsバカはまだ静かに継続中かw : デフォルトの名無しさん [sage] 2018/12/23(日) 15:09:00.33:O7Ty6bBB listviewでマルチセレクトから通常にもどすさいに再描画してるんですが、そのさい行がずれるんですが listboxのtopindexみたいなものはないのでしょうか? どうすればずれないようにできますか? : デフォルトの名無しさん [sage] 2018/12/23(日) 19:45:55.65:M7vXJwnP チェックボックス有効無効をきりかえるため再描画してます。その際行がずれます。 すみませんでした。 : デフォルトの名無しさん [sage] 2018/12/24(月) 22:13:09.28:USpopZY5 Excel VBAにlistviewなんてあったか? : デフォルトの名無しさん [sage] 2018/12/24(月) 22:49:04.51:+FgUdfMA あるよぉ : デフォルトの名無しさん [sage] 2018/12/24(月) 23:02:54.97:kr6Bf1Pl 参照設定でね。 : デフォルトの名無しさん [sage] 2018/12/24(月) 23:56:46.20:USpopZY5 それはVBAじゃないし 何を参照設定したかちゃんと書けよ : デフォルトの名無しさん [sage] 2018/12/25(火) 00:16:00.70:su/K5Fi6 参照設定もVBAの機能の一つだろ デフォルトでもいくつか入ってるし、ファイル操作する時はFSOを追加するし、Outlookの操作も定番のテクニックだし : デフォルトの名無しさん [sage] 2018/12/25(火) 01:26:51.15:fCRLWXqM ListViewはライセンス的に微妙なんだよな。 配る場合はダメだった気がする。 恐ろしく面倒な方法で実装すればライセンス的にも問題無いけどそこまでやれる人は殆どいないと思う。 : デフォルトの名無しさん [sage] 2018/12/25(火) 01:55:29.77:fCRLWXqM あとツールボックス右クリックでその他のコントロールを参照設定とは呼びたくないな。 : デフォルトの名無しさん [sage] 2018/12/25(火) 07:15:44.70:wRBkGyE7 設置すると勝手に参照設定されますから、同じことです : デフォルトの名無しさん [sage] 2018/12/25(火) 08:33:21.08:gnAfBdjP お前が呼びたいとか呼びたくないとか、お前の気分なんぞ知ったことではない : デフォルトの名無しさん [sage] 2018/12/25(火) 18:45:28.39:Is6QTt21 Excel に入ってるんじゃないの? : デフォルトの名無しさん [] 2018/12/25(火) 23:18:20.70:wH59ARy4 入っとるね : デフォルトの名無しさん [sage] 2018/12/26(水) 01:42:12.21:BN5rbpb6 いまのExcel VBAに標準でListViewあるのか? : デフォルトの名無しさん [sage] 2018/12/26(水) 05:15:51.11:43KasKaO 標準の意味とは VBA可の環境ならコントロールの追加は誰でもできるが : デフォルトの名無しさん [sage] 2018/12/26(水) 13:12:31.75:RgV9orAX シートのコピーでafter:=worksheets.countしても最後尾に追加されないことがあるんだけど何これ 通常なら問題無い 非表示シートだか同名シートだかが混ざると不穏な動きする : デフォルトの名無しさん [sage] 2018/12/26(水) 17:11:11.31:43KasKaO 思い込みで書いててて仕様を正確に理解してない コード晒してみ : デフォルトの名無しさん [sage] 2018/12/26(水) 17:49:40.48:Le9KM/M7 afterに入れるのはシートオブジェクトやで? : デフォルトの名無しさん [sage] 2018/12/26(水) 21:16:35.59:Y8+MwfS4 ttp://https://sugoikaizen.com/excelvba/worksheets_sheets/ : デフォルトの名無しさん [sage] 2018/12/27(木) 18:50:28.99:0mQlyYIj Worksheets.Countだけ指定して最後尾にシート追加することもできるんだな。初めて知ったわ。 : デフォルトの名無しさん [sage] 2018/12/28(金) 00:28:35.21:M7adF/cl 解決してるけど状況だけ説明 Thisworkbook.Worksheets("雛形").Copy After:=Thisworkbook.Worksheets(Worksheets.Count) 普通に実行出来て追加される けど末尾に追加されない 雛形シートは非表示で他にブック開いてないのが前提 原因は他の非表示シートが末尾にあったから?ぽい見えるシートの末尾に追加されてた 原因があってるのかは不明だけどコピーの前に全シート表示させる処理書いたら想定どおりに末尾に追加されたから解決としてそれ以上調べてない : デフォルトの名無しさん [sage] 2018/12/28(金) 08:07:29.84:7PkHI2ZE これで解決は酷いなあ。 このコードじゃダメだろ。 初心者が一番ハマるのに引っ掛かってる。 Worksheets.Countはどのブックのシート数を示してるの? 人間の思い込みと現実が違うことはよくある。 ブックが複数開いてたらThisworkbookがActiveとは限らない。 まあ、これが原因かどうかは分からんけど。 : デフォルトの名無しさん [sage] 2018/12/31(月) 13:34:36.98:P9+LicCn コピーしたシートも非表示に設定されてるからじゃね? : デフォルトの名無しさん [sage] 2019/01/03(木) 20:12:26.04:m9d94GZ9 すみません、一般論として教えてください 一つのプロージャ内に複数のForNext文を使う場合 カウンタ変数はそれぞれ用意したほうがいいんでしょうか? それとも全部「i」とかで固定したほうがいいんでしょうか? : デフォルトの名無しさん [sage] 2019/01/03(木) 20:38:50.80:rHu6ErP8 単純にカウンタとしてしか意味が無くて充分に短いループなら全部iでいいよ : デフォルトの名無しさん [sage] 2019/01/03(木) 20:52:55.74:m9d94GZ9 ありがとう これまで全部「i」で統一してて他で使いたいときは違う変数に明け渡したり…ってしてたんだけど この前業者の人が書いたコードを見たらそれぞれに変数を与えてたので… デバッグの時に有利?とか何かプログラム業界の常識みたいなのがあるのかな?と気になって : デフォルトの名無しさん [] 2019/01/03(木) 21:24:04.00:3ahyrkeA 自分の頭使えよ : デフォルトの名無しさん [sage] 2019/01/03(木) 21:38:30.48:BKcPgeWW 他で使いたいときに明け渡すなら最初からそれぞれ違う名前にした方がいいんじゃね : デフォルトの名無しさん [sage] 2019/01/03(木) 22:08:38.04:/hb1raIC ここ質問スレだからそういう幼稚な発言はやめようね。 色んなレベルの人がいるから。 : デフォルトの名無しさん [sage] 2019/01/03(木) 22:16:13.64:rzUuzEne そもそもプロは1つのメソッドに複数のループを書かない : デフォルトの名無しさん [sage] 2019/01/03(木) 22:45:11.18:9E4VKJOH 「プロシージャ」な procedure : デフォルトの名無しさん [] 2019/01/03(木) 22:57:49.15:YFBXiFl7 ループがネストする場合にi,j,kとしたりするのは FORTRAN由来でコンピュータ黎明期からある ttp://https://qiita.com/yaju/items/38f63900491d4ac51af7 座標だとx,yとかで回したりもするがあまり長い名前は使わない方が良いかと : デフォルトの名無しさん [sage] 2019/01/03(木) 23:18:24.27:rHu6ErP8 i,j,kは慣習だけど、それ以外はループ変数といえど意味のある変数名を使うほうがいいぞ 長い名前使うなとか、インタプリタ時代の悪習でしかない いかにわかりやすい変数名つけるかはセンスもあるけどな : デフォルトの名無しさん [sage] 2019/01/03(木) 23:56:28.99:2qiD+7+U 俺は行ならrow、列ならcolumn、インデックスならindexとかにして なるべくi, j, kとか使わないわ、別にこだわりはないけど : デフォルトの名無しさん [] 2019/01/04(金) 00:30:47.29:3QLIqJfD 俺は一文字だけじゃ見失うから iii jjj kkk ccc rrrって3文字連打してる 別の変数名への置換もしやすいしね : デフォルトの名無しさん [sage] 2019/01/04(金) 00:32:01.54:GFUZolCB みなさんどうもありがとう 自分はプログラム屋ではないので業界の常識?みたいなものがあれば知りたくて 今までは使うなら「i」、構造的にかぶるなら「j」あたりを使ってましたが その都度意味のある変数を使う方が多いんでしょうか その他の変数も基本一文字が多いんですけどこれもあまり誉められたことでは無いのかな : デフォルトの名無しさん [] 2019/01/04(金) 00:39:25.54:T+XMZC4N 馬鹿は頭を使うことができんの? : デフォルトの名無しさん [sage] 2019/01/04(金) 02:10:11.62:+nkelZ7z そんな予約語っぽいの、使いたくない。 : デフォルトの名無しさん [sage] 2019/01/04(金) 02:40:32.55:MgMPlhfY 俺は row col idx i i2 i3 をよく使う : デフォルトの名無しさん [sage] 2019/01/04(金) 07:27:59.80:M3G9sl2d シート上の特定Rangeを表してるときならrowとcolumnもありだけど、一般にはiとjかな それ自体が検索対象になることもまずないし : デフォルトの名無しさん [sage] 2019/01/04(金) 08:41:36.91:zy8oD3uq ローカルのカウンタ変数をiで使いまわしてるけどi2とか分けたほうが良いの? 好み? : デフォルトの名無しさん [sage] 2019/01/04(金) 09:27:17.18:+4+fWqKR 誤読の可能性があるなら、分けた方がいいと思う。 ,350あたりが妥当じゃないかな。ただ、例えば行そのものでは なく行を導出するための数値を入れる変数には、rowじゃなくてrowナントカ だのにした方がいいのかな。単なるループカウンタならヘタに意味のある 名前を付けない方が「無意味なカウンタ変数です」ということを示すことが できる気も。自分はループカウンタはとりあえず一文字二文字の変数を 放り込んでそのまま、ということが多い(簡単な処理しか書いたことない)。 : デフォルトの名無しさん [] 2019/01/04(金) 09:54:15.33:DCvNugNP 個人目的ならそれこそ自由、自分が解りやすければなんでもいい 社内使用で他の人が今後も手を加える可能性があるなら 可読性と一般的な用途を考えてijk辺りがよいと思う : デフォルトの名無しさん [sage] 2019/01/04(金) 10:05:37.21:NtMlYI+L カウンタ変数の1つや2つぐらいケチらず定義しろよ それこそ先頭で Dim i1 As Integer , i2 As integer,,, とかやっとけばいいだろ。 こう書くとIntegerよりLongだとか言い出すやつも出てくるけど w : デフォルトの名無しさん [sage] 2019/01/04(金) 11:53:23.85:aVQoc2JA 3ヶ月後の自分は他人 おれならそう書いてあったら、i1とi2になにかしら特別な意図があるのかと思う それならちゃんと分かりやすい変数名をつけるべき : デフォルトの名無しさん [] 2019/01/04(金) 12:16:24.95:YvLbWmko べきとかええねん 好きなようにしろや : デフォルトの名無しさん [sage] 2019/01/04(金) 12:17:38.62:M3G9sl2d integer使う意味が分からんぞ ループカウンタに限らず : デフォルトの名無しさん [sage] 2019/01/04(金) 12:55:43.45:aVQoc2JA VBAは16ビットの時代から生き残ってるからなぁ : デフォルトの名無しさん [sage] 2019/01/04(金) 14:22:56.70:dyujBTAs C++試食版みたいな : デフォルトの名無しさん [sage] 2019/01/04(金) 15:06:28.56:FLK7qEcT 文字コードでInteger使うよ : デフォルトの名無しさん [sage] 2019/01/04(金) 17:11:54.33:JnujQIz6 個人プログラムのときは Jは大文字にしてる ijだとぱっと見差がないから それから、行と列はc、r変数にしてる : ◆QZaw55cn4c [sage] 2019/01/04(金) 18:43:57.47:ry6hJENG 列・行では? : デフォルトの名無しさん [sage] 2019/01/04(金) 22:12:41.23:ZmFghfmj officeのパッチにやられた : デフォルトの名無しさん [sage] 2019/01/04(金) 22:26:40.57:zvNc5eXN i,j,kきらい indexとかcountとかすき rowIndexとかcolumnCountとかもっとすき : デフォルトの名無しさん [sage] 2019/01/04(金) 22:35:43.15:8kQ9PR43 好き嫌いはチラシの裏に : デフォルトの名無しさん [sage] 2019/01/05(土) 01:06:17.29:oO8mkqZ6 何が書いてあるのか、未来の自分がわかり、他人もわかるのが理想 昔ながらのルール(慣習)は理由なく破るべきではない : デフォルトの名無しさん [sage] 2019/01/05(土) 03:31:35.86:7TsgmPMW 意味のある変数なら意味のある名前をつけてくれよ : デフォルトの名無しさん [sage] 2019/01/05(土) 07:37:32.77:1YbtJ0wD i j kは使い捨てのループカウンターとして世界中に広く認知されてるし入力のコストも低い いちいち For TemporaryLoopCounter = 1 To 5 とか書きたい人は自由にすればいいけど、それこそ自己満足の世界だと思う : デフォルトの名無しさん [sage] 2019/01/05(土) 08:45:01.70:ORiRzU3d 長く使うプログラムほど扱う対象が汎用的で、変数が具体的に何を指すとか 限定できないため i, j, k になりがち。 逆に具体的対象を扱うプログラムだと変数名も具体的にした方が良いだろうが 汎用的に長く使うものではない。 何が言いたいかというと別に何でもありません。 : デフォルトの名無しさん [sage] 2019/01/05(土) 09:11:07.61:xejHmutN かなり乱暴だが > 変数名の長さはスコープの広さに比例させるべし : デフォルトの名無しさん [sage] 2019/01/05(土) 09:12:48.40:tCoREms1 に同意 一般論でいうと、メンテナンス性に優れたプログラムを書くには次の点を意識するとよい ・変数の生存範囲はできるだけ狭く ・変数の生存期間はできるだけ短く で、これを意識したプログラムの変数名は自然に短くなる 極論すれば、サブルーチンが適切に分割されていてサブルーチン名だけで何やってるか明らかなら、 その中の一時変数名なんか全部一文字でもいい : デフォルトの名無しさん [sage] 2019/01/05(土) 14:06:52.83:eDAGI3vR そもそもループ回すのにループカウンタ使うのが時代遅れ for each使え : デフォルトの名無しさん [sage] 2019/01/05(土) 14:09:46.21:tCoREms1 時代遅れとか言い出したらVBA自体が使えなくなる ナンセンス : デフォルトの名無しさん [sage] 2019/01/05(土) 14:28:05.44:c7wm3fbX For Each とループカウンタ使うのとどちらも一長一短あるのを知らない人は早く初心者を脱出してね。 : デフォルトの名無しさん [sage] 2019/01/05(土) 15:07:14.98:ORiRzU3d 一長一短ていうか For Each はワンパターンな使い方しか出来ないからドヤ顔するようなもんじゃないな : デフォルトの名無しさん [sage] 2019/01/05(土) 15:49:59.34:xejHmutN 配列Aと配列Bの要素同士を足して配列Cに入れる って言うのを For a, b, c in A, B, C c = a + b Next みたいに書けるならいいんだけどなぁ : デフォルトの名無しさん [sage] 2019/01/05(土) 16:01:26.52:oO8mkqZ6 C = A + B って書けた方がいいな : デフォルトの名無しさん [sage] 2019/01/05(土) 16:09:26.86:ORiRzU3d ・そういう構文がない ・c に代入することが実はできない の二つの意味でダメなんだよね : デフォルトの名無しさん [sage] 2019/01/05(土) 16:17:56.11:xejHmutN それ自由度が低い For a, b, c in A, B, C If b <> 0 Then c = a / b Else c = 0 Next みたいなことを書きたくなるとかありそうだし : デフォルトの名無しさん [sage] 2019/01/05(土) 16:57:08.01:BR5BglFG linq for vba : デフォルトの名無しさん [sage] 2019/01/05(土) 20:12:44.53:FzRtN9wJ しかしvbaにはプロシジャより狭いスコープがないんだよ : デフォルトの名無しさん [sage] 2019/01/05(土) 20:30:12.97:xejHmutN だから何? 最近のモダンな言語と比べてもブロックスコープが無いくらいじゃないの? : デフォルトの名無しさん [sage] 2019/01/05(土) 20:53:20.75:tCoREms1 まともなプログラマならブロックスコープが欲しくなるような大きなプロシージャは書きません : デフォルトの名無しさん [sage] 2019/01/05(土) 20:57:58.68:FzRtN9wJ 実際使い捨てならそれで問題になる事はないんだが 使い捨てのループ変数がループ内でスコープが閉じないのがなぁ あと宣言位置の問題もあるけど : デフォルトの名無しさん [sage] 2019/01/06(日) 01:37:57.50:ckNCIF8F わかる方がいれば教えてください ユーザーフォームに配置したラベルに、選択中のセルの値を表示したいです 他のセルをアクティブにしたらラベルの内容も次々と変わるようなものを作りたいです 初心者なりに考えたのですが、 セルの選択をダブルクリックにしてシートモジュールの Private Sub Worksheet_BeforeDoubleClick(〜) みたいなものを使うパターン、 ユーザーフォーム側にアクティブセルの値を表示するためのボタンをつけるパターン、 それくらいしかラベルに表示する方法が思いつきません 思っていた上に書いたような動きのものが作れません そもそもそんなものは不可能でしょうか セルをアクティブにするだけでそんな動きをするものは作れたとしても重くて(?)実用的じゃないでしょうか : デフォルトの名無しさん [sage] 2019/01/06(日) 01:43:01.14:ckNCIF8F ユーザーフォームが出ている時だけワークシートイベントを発生させることってできますか? : デフォルトの名無しさん [sage] 2019/01/06(日) 01:56:18.52:wuHdfDnO Private Sub Worksheet_SelectionChange(ByVal Target As Range) UserForm1.Label1.Caption = ActiveCell.Value End Sub : デフォルトの名無しさん [sage] 2019/01/06(日) 02:17:03.95:GQx3m9rS 発想が根本的に間違っている イベントは自然に発生するものであり、それを制御しようなどと考えてはいけない ユーザーフォームが出ていないときはイベントを無視すればよい : デフォルトの名無しさん [sage] 2019/01/06(日) 06:33:59.75:VjyciGNt 自分もVBA初心者だけど書いてみます 既に言われてるけど、 イベントの発生は操作できないから受け取り側でフォームが読み込まれてるか調べて、 実行するか選択する形になる 思いつく方法は、 ・フォームが一つしかないなら、UserFormsコレクション(読み込まれたフォームの一覧)の要素数が1以上かを調べる ・UserFormsコレクションに該当のフォーム名(typename関数で取得できる)があるか調べる ・印になるパブリック変数を宣言し、フォームのInitializeイベント(読み込まれた時に発生するイベント)で適当な値を代入させ、その値を調べる。 もしくはWithEvents(これを付けて宣言した変数のイベントを受け取れる)でシートのイベントを受け取るクラスモジュールを用意して、 それにフォームのラベルを操作させる方法もある 余程シートに依存した目的でない限り、個人的にはこちらの方が自然だと思う : デフォルトの名無しさん [] 2019/01/06(日) 11:55:51.09:RBr8Qah/ Excel2010の人は1月3日版のアプデを入れないように 【Win】 WindowsUpdateで入れなくても良いKBリスト。2018年12月12日まで分 ttp://http://blog.livedoor.jp/nichepcgamer/archives/1039785182.html : デフォルトの名無しさん [] 2019/01/06(日) 13:03:05.58:BkO4LwOx こんな初心者おる? : 391-392 [sage] 2019/01/06(日) 13:13:13.46:ckNCIF8F さんが言ってることが全く分からないというか一度も触れた事がないので これを機会に勉強してみます 謎のクラスモジュールを使ってみたいと思っていたので良かったです みなさんありがとうございました : デフォルトの名無しさん [sage] 2019/01/06(日) 13:25:33.73:kaEteaA+ ググれば出てくることなんだから、初心者でも答えれるやろ。 まあ人によっては初心者は卒業したって判断しそうなくらいのレベルはありそうだが。 : デフォルトの名無しさん [sage] 2019/01/06(日) 14:02:55.44:L4UGmOY3 新人研修の半ばぐらいかな : デフォルトの名無しさん [sage] 2019/01/06(日) 15:46:11.59:BcE7MgiE UserFormで直接WithEvents付きの変数使えるぞ いろいろチェックとかはぶくとこんな感じ Private WithEvents ws As Worksheet Private Sub UserForm_Initialize() Set ws = ThisWorkbook.Worksheets(1) End Sub Private Sub ws_SelectionChange(ByVal Target As Range) Me.Label1.Caption = Target.Value End Sub : デフォルトの名無しさん [sage] 2019/01/07(月) 02:40:02.74:pgy1rNuG プログラミング経験無いまま前任者から引き継いでしまったので、ここで色々教えて貰ってました 最近は調べ方も大体わかってきたので余り来ていませんでしたが、 アドバイス側に回ってもいいかなと思って書いてみました 分からないのはどの部分でしょうか 後半はさんの通りです ヘルプにクラスのみと書かれていたので、フォームでは使えないと思ってました・・・ : デフォルトの名無しさん [] 2019/01/07(月) 05:30:38.59:fq4DjYiu IntegerよりLongだ : デフォルトの名無しさん [] 2019/01/07(月) 06:49:25.01:fq4DjYiu : デフォルトの名無しさん [sage] 2019/01/07(月) 18:19:40.41:/LhWJ7aL Dim tinko as Long : デフォルトの名無しさん [sage] 2019/01/07(月) 21:52:39.53:QrgUIT/b 俺しか見ることないだろうから、 Dim chinko&, unko$ : デフォルトの名無しさん [sage] 2019/01/07(月) 22:53:42.33:pgy1rNuG 中学生か・・・ : デフォルトの名無しさん [sage] 2019/01/07(月) 23:07:15.99:93Abj8CI セルにindirectを入力しないでプルダウンを連動させる方法はありませんか? 名前”地区” 第一 第二 第三 名前”第一” 製造 塗装 名前”第二” プレス 溶接 名前”第三” 組立 検査 J列にプルダウン”地区”第一 第二 第三 K列が隣のJ列を参照してプルダウン(indirect)が変わるようにしたいのですが、 K列に=indirectを入力するとファイルサイズが大きくなるので避けたいのです。 何か良い方法はありませんか? ttp://https://dotup.org/uploda/dotup.org1740935.zip.html 入力用のブックとupローダーに挙げた台帳ブックを分けた方がいいのは 確かなんですが、要求元は台帳で連動するプルダウンを使いたいとのことで 困っています。ご指導ご鞭撻のほどお願い申し上げます。 : デフォルトの名無しさん [] 2019/01/09(水) 10:11:24.83:pekX2UBC 新元号対応の更新プログラムで早速バグ発生かよwww : デフォルトの名無しさん [sage] 2019/01/09(水) 16:10:15.28:HhjCvbTy 新元号対応パッチは4月1日以降にしか出せないだろ それに今はOffice単体じゃなくてWindows側の日付管理APIで一括対応する仕組みになってるし : デフォルトの名無しさん [] 2019/01/09(水) 16:50:06.39:pp8qimk1 新元号アップデートでExcel 2010が起動しない不具合、Microsoftが削除を呼び掛け ttp://https://internet.watch.impress.co.jp/docs/yajiuma/1160935.html : デフォルトの名無しさん [] 2019/01/09(水) 17:45:40.84:Ybhx7jcq ただちに影響、出てるじゃん、何が立憲民主党だ、ホラ吹きの枝野! 2008年 12808万人 + 5万 △△△△△ 2009年 12803万人 − 5万 ▼▼▼▼▼ 2010年 12806万人 + 3万 △△△ 2011年 12780万人 −26万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 2012年 12752万人 −28万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 2013年 12730万人 −22万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 2014年 12709万人 −21万 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ ttp://lavender.5ch.net/test/read.cgi/asaloon/1546600138/l50 【モンサント、アマルガム】 厚労省、危険物を安心て、ふざけんな、国いらん。オノ・ヨーコ「来るな」 ttp://rosie.5ch.net/test/read.cgi/liveplus/1547000522/l50 : デフォルトの名無しさん [] 2019/01/09(水) 18:41:39.05:B8oaeAR+ 「ぼくが政権にいる間は影響無いことにしておきます」(のんのん) : デフォルトの名無しさん [sage] 2019/01/09(水) 22:29:26.70:60CROlND 安倍の犬うぜー : デフォルトの名無しさん [sage] 2019/01/10(木) 00:17:06.97:RQUJx46Y VBAのフォームのツールボックスにコントロールを追加したいのですが、右クリックで「その他のコントロール」を追加してもコントロールの追加ダイアログが表示されず無反応のまま終わってしまいます。 WIN7(64) OFFICEは2010(32) 2013(32) 2016(32)を入れ替えましたが全て同じでした。 C:\Windows\System32 C:\Windows\SysWOW64 どちらにもFM20.DLLは入っています。 オフィスのクリーンアンインストールも試しました。ツールの参照設定で参照しなおしてもNGです。 OSに問題があるかもしれませんが、何かチェック事項はありますか? よろしくお願いします。 : デフォルトの名無しさん [sage] 2019/01/10(木) 00:28:18.54:RQUJx46Y です 参考までに、これと同じ状態です ttp://https://answers.microsoft.com/ja-jp/msoffice/forum/all/excel/15087c63-48d1-48b8-84ba-4c6a693bc6e8 : デフォルトの名無しさん [sage] 2019/01/10(木) 13:01:25.04:xPJRPdGO fm20.dllで使えるコントロールってなんだ? : デフォルトの名無しさん [sage] 2019/01/10(木) 15:17:22.62:sOvEngqx 追加前の標準フォームのコントロール群です。 フォームを挿入するとエクセルのツールのメニューの方で自動的に有効になります。 ActiveXとかツールボックスのコントロールとか関係あるでしょうか? : デフォルトの名無しさん [sage] 2019/01/10(木) 20:21:39.50:MwVMQTRa プログラム初心者ですがVBA勉強するのに優しく解説してくれてるサイト教えてください : デフォルトの名無しさん [sage] 2019/01/10(木) 21:44:24.98:RQUJx46Y です C:\Documents and Settings\ユーザ名\Application Data\Microsoft\Forms の中を見たところEXCEL.boxのみでしたが、他何か入っていますか? : デフォルトの名無しさん [sage] 2019/01/10(木) 21:59:37.39:tfDJlaMd 自動的に有効になるならそのまま使えばいいじゃん : デフォルトの名無しさん [sage] 2019/01/10(木) 22:06:22.42:X3kdRf9X ここ : デフォルトの名無しさん [sage] 2019/01/10(木) 22:08:24.35:MwVMQTRa なんだお前きも : デフォルトの名無しさん [sage] 2019/01/10(木) 23:01:57.46:RQUJx46Y 有効になるのは「標準のコントロール」のみだけです。 使いたいのはWebBrowserコントロールなのですが、それはデフォで表示されていないので追加をする必要があります。 他のPCでは問題なく出来ていますが、1台だけ同じ手順で追加できないPCがあるので困っています。 ttp://image.itmedia.co.jp/ait/articles/1502/06/ExcelVBA9TipsForm_02.png このイメージでいうとツールボックスに地球のアイコンがありますよね。これを追加するために イメージ右半分のコントロールの追加のダイアログを出したいのですが出ないという意味です。 : デフォルトの名無しさん [sage] 2019/01/11(金) 02:46:48.54:OnlOg3zM 同じ手順でできるPCとできないPCがあるならPC個別の問題かな うちの環境では MicrosoftWebBrowser なら ieframe.dll を使っているようだけど : デフォルトの名無しさん [sage] 2019/01/11(金) 03:33:50.23:OnlOg3zM フォームが表示されている画面で 表示→ツールボックス でツールボックスを表示してないと「その他コントロール」の項目が選択できないってやつかな? : デフォルトの名無しさん [sage] 2019/01/11(金) 08:37:10.61:sIbnloi9 いやいや、これは何かが壊れているわけで、当然PC個別の問題だし、ツールボックスが表示されている状態でその他のコントロールを選択すると普通は表示される筈のダイアログが表示されないという問題。 ExcelじゃなくてWindowsに問題のある可能性もある。 : デフォルトの名無しさん [sage] 2019/01/11(金) 09:14:26.57:YHHsLUsK 返信ありがとうございます。 私もOS自体に問題があると思いますが出先のPCなので実際誰が何をしているのやらな状態です。 私はプログラマーではないので詳細はわからないのですが、ダイアログの参照先を調べてみた限りでは ActiveXコントロールのDLLを色々なフォルダに参照にいっているようで、さすがにこれだけけのコントロールが壊れているとは考えにくいため コントロールを表示するためのOSとの手続きの部分がおかしくなっている気がします(office側の要求にOSが応えない) OSを初期化してしまえば良いと思うのですがもしそれで何かあった場合私では責任が取れないのでお手上げの状態です……トホホ まずはiframe.dllの所在を調べてみます。上司は私より疎いのでなんとかならないの?の一点張りですが もしどうしようもない場合もう一度言ってみたいと思います。(多分ここで解らなければお手上げだと思うので) ツールボックスは表示できます(フォームをアクティブにして、メニューの表示で選択) : デフォルトの名無しさん [sage] 2019/01/11(金) 12:08:47.38:OnlOg3zM あと一つだけ、参照設定画面でライブラリの優先順位が正常なPCと同じかどうか見たほうがいいかも : デフォルトの名無しさん [sage] 2019/01/11(金) 12:39:42.06:1sVePy4G 多分、レジストリに登録されているActiveX情報を見に行っているだけで実際のdllは見に行っていないと思う。 dllを見に行くのはダイアログ上でチェックした時じゃないかな。 リストアップに問題があるとすればレジストリに問題があるとか。 でも単純にそのダイアログを表示するだけの所でこけている可能性もある。 WordとかAccessでも同じ状況なのかな? 他にOffice以外でActiveXのリストを表示できるアプリがあれば、そこでは問題無いかなど。 : デフォルトの名無しさん [sage] 2019/01/11(金) 13:24:28.67:UHhRfKCF 有用な情報ありがとうございます! ここら辺も重点的に調べてみます!! : デフォルトの名無しさん [sage] 2019/01/11(金) 18:28:05.98:s+JlNqnO オフィスを少し古いバージョンにロールバックさせてみれば? 2010とか2003にしろって言ってるわけではなくて 2016のパッチの適用状態を最新から4世代くらい前に戻してみてはどうかって言う話ね : デフォルトの名無しさん [] 2019/01/12(土) 11:49:00.24:uvKv7UXV まだエクセルωなんて使ってるのかωω : デフォルトの名無しさん [sage] 2019/01/12(土) 12:31:34.63:e9xF8Gpo ・客とのデータ交換フォーマットのデファクトスタンダード ・文字列、表、図形を混合したセマンティックレスな文書作成ツールとして優秀 ・インストール監査がかからない この条件を満たすツールは今のところエクセルしかないのでエクセルは必要 でもVBAの存在意義には正直なところ懐疑的かな : デフォルトの名無しさん [] 2019/01/12(土) 12:35:57.04:02ysTAL5 【奇跡のリンゴ】 オノ・ヨーコ「来るな殺される」 ttp://rio2016.5ch.net/test/read.cgi/beatles/1547022582/l50 : デフォルトの名無しさん [sage] 2019/01/12(土) 13:57:32.57:Sk8d17OT エクセルωって何? : デフォルトの名無しさん [] 2019/01/12(土) 16:04:54.69:+r4m8XcO おちんちん : デフォルトの名無しさん [sage] 2019/01/12(土) 20:42:36.47:WuY9EGhJ すごい早口で言ってそう : デフォルトの名無しさん [sage] 2019/01/13(日) 00:05:22.07:hjY5Ys6w 割り当てたショートカットキーが競合した際の優先順位ってどうなっているのでしょう。 複数ブックでマクロオプションが競合した場合は、先勝ちのような気がします。 OnKeyはそれよりも強い? 自ブックに割り当てたショートカットを優先させる手段はありますか? : デフォルトの名無しさん [sage] 2019/01/13(日) 04:14:15.34:WBvXKiKr フォーカス順じゃないのか? : デフォルトの名無しさん [sage] 2019/01/13(日) 06:56:01.77:SAPxjsPr えーと、同じキーアサインを持っているブック、A→Bの順に開いて、Bにフォーカスが当たっている状態で、Aのキー割付が反応しました。 先に読み込まれた方が居座るのかと、、 フォーカス順ってどういう状態? : デフォルトの名無しさん [sage] 2019/01/13(日) 07:17:03.79:m/N1o858 アクティブなブックかと思ってた : デフォルトの名無しさん [sage] 2019/01/13(日) 07:37:12.12:SAPxjsPr そうだと嬉しいんだけど : デフォルトの名無しさん [] 2019/01/13(日) 20:14:37.35:9xnKbe6r こんにちはです。 更新の削除(ロールバック)も試してみたのですが改善しなくて結局もうお手上げ状態でした。 他のofficeアプリでも呼べなかったのでとりあえずドライブごとバックアップ取ってシステム入れ直すことにしました。 パスワードがないとか、アクティベーションができないとか、インストールしていたプログラムの原本がないとかどうなってんだよこの会社は程度には散々な目に合いました。 今どうにかこうにか復旧できて明日の業務には間に合いそうです。 ID・PWを統合管理する何かを作らないとダメかも・・・ もうしんどいのでおうち帰りますT−T アドバイスくださったかたどうもありがとうございました。 なんかおいしいものたべたい…… : デフォルトの名無しさん [sage] 2019/01/13(日) 22:13:52.77:4kwCYp6o お疲れ様としか言いようがない : デフォルトの名無しさん [sage] 2019/01/13(日) 23:14:49.60:W6yQzIWL 黴の生えた産廃に固執し先へ進む努力をしてこなかった人間と組織の末路 : デフォルトの名無しさん [sage] 2019/01/13(日) 23:49:20.57:mzAlUYGr かわいそうに くだらないトラブルで連休が潰れるなんてな 最初から.NETにしてたらゆっくり休めたかもなぁ : デフォルトの名無しさん [sage] 2019/01/13(日) 23:56:50.10:LesaGnrm 会社がシステム更新の費用をケチって社員に残業や休出を強いるのはブラック判定丸です : デフォルトの名無しさん [sage] 2019/01/14(月) 01:11:47.03:HbfNSvAf .netってvbaと比べて難易度高い? : デフォルトの名無しさん [sage] 2019/01/14(月) 01:27:46.11:p535EsUF .NETは簡単すぎて驚くほど : デフォルトの名無しさん [] 2019/01/14(月) 06:51:38.95:ztoWl03f じゃjavascriptってvbaと比べて難易度高い? : デフォルトの名無しさん [sage] 2019/01/14(月) 09:16:46.39:Kw7zClor 重度になると、ExcelをCalcに入れ替えられます。 : デフォルトの名無しさん [sage] 2019/01/14(月) 09:44:43.02:p535EsUF Calcのほうがマシでは? 機能面でも上だし無料でライセンスやインストールでのトラブルなどないからね : デフォルトの名無しさん [sage] 2019/01/14(月) 09:53:44.76:/nPFdxzS VBA(というかVBシリーズ一般)ユーザーは他のものを覚えようとしないから未だにVBAユーザーなのだから、 VBAではないものは何であろうと極めて難しいよ : デフォルトの名無しさん [sage] 2019/01/14(月) 10:04:01.93:p535EsUF 高い金を払ってるのだから問題をサポートに投げなきゃ損だよ 連休を使って自力解決するぐらいなら最初から無料・サポート無しのOSSツールを使うのが正解 : デフォルトの名無しさん [sage] 2019/01/14(月) 10:21:32.96:Gjhb4oYZ Calc使ったこと無いだろ… 動作が安定しないしよくわからない独自仕様があるから困るわ 絶対パス使って別ファイルのデータを参照しにいったら、内部的に相対パスに変換されてるらしくて、 ファイルの位置を変えたらリンクを張り直さないと動かないとかだし : デフォルトの名無しさん [sage] 2019/01/14(月) 10:27:00.01:p535EsUF エクセルだって 動作安定しない(ちょくちょく落ちる、ファイル壊れる、操作が失敗する) へんな独自仕様の塊(そもそも表計算の標準仕様とは?) ファイル移動したらリンク切れる(当たり前) もしかしてなんか違うツールの話してる? : デフォルトの名無しさん [] 2019/01/14(月) 10:49:16.77:rhE9Hj5A calcってwindowsの電卓のことじゃなかったのか? : デフォルトの名無しさん [] 2019/01/14(月) 10:53:17.36:rhE9Hj5A プロのプログラマならショートカット使うから Winキー + E + calc + ENTERキー でいつも瞬時に電卓立ち上げてるからな その間0.1秒 : デフォルトの名無しさん [sage] 2019/01/14(月) 11:22:28.62:/xEWvTMC 電卓で計算してExcelに入力するおじさん見たことある : デフォルトの名無しさん [sage] 2019/01/14(月) 11:55:28.16:9Cudnq1q 無料の、Libre Office を使えば? : デフォルトの名無しさん [] 2019/01/14(月) 12:42:47.66:aPj/koI6 おまえが壊したんだろどうみても : デフォルトの名無しさん [sage] 2019/01/14(月) 12:50:29.27:w9DNi3U5 電卓ボタンがあるのに : デフォルトの名無しさん [sage] 2019/01/14(月) 15:17:38.41:frEC6XsU 典型的なステレオタイプ : デフォルトの名無しさん [] 2019/01/14(月) 15:19:29.30:kL0Onkfi 馬鹿は新しいものが良いものだと思ってるバージョンすぐ上げるからそうなる : デフォルトの名無しさん [sage] 2019/01/14(月) 16:17:48.40:p535EsUF と思ってる人がセキュリティ事故や上の方でやらかしたようなトラブルにハマっっちゃうんだよな 何事も枯れてるほうがいいなんてのはとうの昔の話で、今は素早いアップデート(とテスト)が大切なんだよ : デフォルトの名無しさん [] 2019/01/14(月) 17:26:03.90:YUjplXjc ID:p535EsUF 本日の死んだ方がいい大馬鹿 : デフォルトの名無しさん [] 2019/01/14(月) 17:36:28.59:Kh7Ilxpb でもVBAなんて未来ないじゃん 今から覚える意味ないのは間違いない : デフォルトの名無しさん [sage] 2019/01/14(月) 19:11:25.88:p535EsUF ロジカルに意見できなくなって暴言を吐くしかできなくなった人ってたまに居るけどなんかかわいそう : デフォルトの名無しさん [sage] 2019/01/14(月) 19:11:30.68:6UwZJ038 未来は無くても現在はあるから : デフォルトの名無しさん [sage] 2019/01/14(月) 19:15:17.29:p535EsUF 過去の負債は沢山ありそうだ : デフォルトの名無しさん [sage] 2019/01/14(月) 19:21:43.79:qRVrYCla いい加減、マクロの実行だけはできるけどVBEは別途開発者ライセンスの購入が必要、くらいの弾圧はしていいと思う さすがにいつまでも甘やかしすぎ : デフォルトの名無しさん [sage] 2019/01/14(月) 19:23:33.71:Kw7zClor 意外と普通にいるんだわ。 : デフォルトの名無しさん [sage] 2019/01/14(月) 20:35:40.54:Cz3RFHYj ろくに組めない奴がマウント取りたがってる構図だな。 実際、俺の回りにいるできる奴はVBAを駄目だとか言う奴はいない。 : デフォルトの名無しさん [sage] 2019/01/14(月) 20:43:07.10:qRVrYCla 実際、できる奴なら必ず他の選択肢を持っているからね VBAに縛られていないから悪く言う必要もないだけであり、彼らが積極的にVBAを選択することはないよ : デフォルトの名無しさん [sage] 2019/01/14(月) 20:51:06.32:Cz3RFHYj まあ、できる奴はC#も使わんけどね。 C++使うわな。 : デフォルトの名無しさん [sage] 2019/01/14(月) 21:02:23.95:qRVrYCla 無意味な拘りで3倍の工数をかける奴は「できる奴」とは言わない ただの迷惑で無能なオタクだな : デフォルトの名無しさん [sage] 2019/01/14(月) 21:57:12.74:fMQSLe21 C#やC++のスレでは自慢できないからここでマウントしたがる…というわけですね : デフォルトの名無しさん [sage] 2019/01/14(月) 22:21:10.88:HbfNSvAf vbaのいいところってエクセル持ってれば無料で使えて大体のクライアントpcにエクセル入ってるって事なんだからあんまりあーでもないこーでもない言ってやるなよ : デフォルトの名無しさん [] 2019/01/14(月) 22:26:43.78:HmGTNO3E エクセルのVBAってシート=変数の一覧みたいなものだし 素人にはやりやすいだからエクセルは好きですよ。 そんな感じでプロの人と棲み分けできていると思う。 : デフォルトの名無しさん [sage] 2019/01/14(月) 22:26:54.46:87eYPPUj Officeが入ってなくてもWindowsパソコンには必ず入ってるJavaScriptやC#の立場は : デフォルトの名無しさん [] 2019/01/14(月) 22:34:56.07:HmGTNO3E JavaScriptっていますごく人気あるんじゃないの? : デフォルトの名無しさん [sage] 2019/01/14(月) 23:07:34.41:Cz3RFHYj 結局、出来ない奴ってのはオラが世界だけなんだよな。 C#なんて出来ないこといっぱいあるのに工数とかいって言い訳するんだよ。 なんであんな遅くて出来ないこといっぱいのクソ言語使うのかねえ。 なんて言われた時の反論がバカにしてるVBAと同レベルの反論をするんだよな。 まともな奴ならそういう都合が分かってるからマウントなんて取らないものなんだが。 : デフォルトの名無しさん [] 2019/01/14(月) 23:28:28.98:HmGTNO3E あなたのいう出来る出来ないっていうのは何を指しているのかは解りませんが私にとっては何の価値も意味もないです。 それともあなたは自分が出来る奴っていう自慢をしたいんですか? あなたが本当に凄いならあなたのいう下らないレベルの言語のスレではなく、もっと凄い人が沢山いるスレが相応しいと思います。 : デフォルトの名無しさん [sage] 2019/01/14(月) 23:36:15.26:6n/s2HAk キミ面白いね : デフォルトの名無しさん [] 2019/01/15(火) 01:46:38.96:yHGEgwFF 働いたこともない無職か : デフォルトの名無しさん [sage] 2019/01/15(火) 08:47:01.01:2H7V8WUe 出来る奴ってのはどんな言語にもいるけど言語の優劣を語るような奴は出来ない奴の典型。 C#の方が...などと言う奴の言ってることってのは突き詰めると「プログラマーなんて底辺」なんてのと一緒なんだよ。 そんなことも分からないからマウント取ろうと頑張るんだね。 自分のバカさ加減を喧伝するようなもんだ。 : デフォルトの名無しさん [] 2019/01/15(火) 09:14:01.41:S3yO0kW1 自己紹介乙 : デフォルトの名無しさん [sage] 2019/01/15(火) 13:10:33.30:4ICOKV5/ 相手するなよ… : デフォルトの名無しさん [] 2019/01/15(火) 15:44:09.85:+MTMyzJj アプデしたらExcelうごかんくなった たすけてえろいひと : デフォルトの名無しさん [sage] 2019/01/15(火) 17:14:50.09:bs6RyUw7 まず服を服を脱ぎます : デフォルトの名無しさん [] 2019/01/15(火) 17:49:29.10:yHGEgwFF ID:p535EsUFに聞け : デフォルトの名無しさん [sage] 2019/01/15(火) 17:53:44.09:LAAyKIEn できる奴ほど言語のメリットデメリットを正確に理解してるから優劣を語る 出来ない人はそもそも語るほどの知識がない : デフォルトの名無しさん [sage] 2019/01/15(火) 20:59:40.68:2H7V8WUe メリット、デメリットを把握してたら優劣つかないんだが。 そうだな、このスレで何度となく言われてることだが、Excelのみで完結できるというメリットを挙げると、別ファイルが有っても大きな問題じゃないとかくだらない言い訳を始めるんだよ。 今まで、どんな場合でもVBAは駄目とか言ってたくせに。 : デフォルトの名無しさん [sage] 2019/01/15(火) 21:49:29.77:LAAyKIEn もうそれしか拠り所がない感じなのかな : デフォルトの名無しさん [sage] 2019/01/15(火) 23:55:27.89:7/bomr1d 出たな単一ファイル老人 : デフォルトの名無しさん [sage] 2019/01/16(水) 12:53:07.07:dguj1mvw どんな場合でもと言ってたのが破綻したわけだ。 それに、この点は全てに係る重要な点だ。 他にも沢山あっただろ。 でもこれ1つで「どんな場合でも」は破綻したな。 : デフォルトの名無しさん [sage] 2019/01/17(木) 10:25:15.47:yJSDrWu9 そもそも職場でexcelしか許可されてなくてほかのソフトが入れられない人にとって ほかの言語がどれだけメリットがあっても使わせてもらえなければどうしようもないんじゃね 俺はVBA以外も多少知っているけどそっちの話は別のスレでやってる : デフォルトの名無しさん [sage] 2019/01/17(木) 11:51:25.20:a+HEJ0Au 本当に必要なら申請すれば入れさせてもらえるはずとか言ってもねぇ VBAでは絶対無理ってわけでもなく、出来ないこともないので、 本当に必要かって言われるとそうではないことも多いからなぁ : デフォルトの名無しさん [sage] 2019/01/17(木) 12:21:24.46:oU9OMPiG C#やPowershellも含めて使えないってことは滅多にないだろ そういう特殊環境を前提に語るべきではない : デフォルトの名無しさん [sage] 2019/01/17(木) 12:56:14.54:JYUOuN3I 仕事ではその特殊環境となる場合が結構あるんだが。 VBA禁止って所もある。 けどこのスレはVBAが前提なんでね。 C#やPowerShell禁止はデメリットになるけどVBA禁止はデメリットにならないという前提を理解出来ない奴は結構来るけど。 : デフォルトの名無しさん [] 2019/01/17(木) 13:09:47.45:gy8QMGRk VBA禁止の本当の意味は、 馬鹿が作ったVBA禁止 : デフォルトの名無しさん [sage] 2019/01/17(木) 13:42:50.54:K8cT5dis IEをオブジェクトにしてフォームに入力、実行まではできます。 実行後、更新されたHTMLを取得するにはどうすればよいのでしょうか? : デフォルトの名無しさん [] 2019/01/17(木) 13:45:27.52:Vm2XnGVD わかるわ。うちもシンクライアントでガチガチにOS固められてるから必然的にVBAとJavascript覚えた。 : デフォルトの名無しさん [sage] 2019/01/17(木) 14:38:35.71:m9vUe5gc VBAでやることではありません RPAでも購入してください : デフォルトの名無しさん [sage] 2019/01/17(木) 16:39:21.64:yJSDrWu9 C#やPowershell のスレでやるべきである : デフォルトの名無しさん [] 2019/01/17(木) 16:39:45.91:Vm2XnGVD objIE.Document.Body.innerHTML で読めないの? : デフォルトの名無しさん [] 2019/01/17(木) 16:44:36.37:YCcy3q+Y ここはVBAのスレ。文字読めないヴァカ? C#やPowershell自慢やりたいんならそのスレに逝けアホンダラ : デフォルトの名無しさん [] 2019/01/17(木) 16:47:10.66:6nl0xXGy 何で自慢になるんだ? 馬鹿なのか? : デフォルトの名無しさん [] 2019/01/17(木) 17:43:02.84:8rj4oJ0j 馬鹿には無理 : デフォルトの名無しさん [sage] 2019/01/17(木) 18:08:51.74:yJSDrWu9 自慢じゃなくて荒らしだな : デフォルトの名無しさん [sage] 2019/01/17(木) 19:42:56.03:buYHz7fQ 普通は、Ruby, Selenium WebDriver, Nokogiri で、スクレイピングするけど、 ピラフ大王は、5ch のスレを、PowerShell でスクレイピングしていた、強者! : デフォルトの名無しさん [] 2019/01/17(木) 19:57:04.61:Vm2XnGVD あ、俺Seleniumでスクレイピングしてるわ IE面倒なんだもんw : デフォルトの名無しさん [sage] 2019/01/17(木) 20:39:11.18:JYUOuN3I IEオブジェクトはHTMLコード内の改行も1つのノードとして扱ってる点が特殊だな。 MSXML2.XMLHTTPとかhtmlfileでやる場合はそんなこと無いけど。 : デフォルトの名無しさん [sage] 2019/01/17(木) 20:51:55.46:/w6CmWBz スクレイピングをわざわざVBAでやろうという発想がどこから出てくるのか不思議だな 個人なら裁量があるのにあえてVBAを使う選択はありえないし、 会社だとするとスクレイピングをやろうと考える程度にリテラシーがありコンプライアンス意識が低く、 かつ他のツールを使えない程度には厳格なちゃんとした企業なのにRPAを買う金はない? : デフォルトの名無しさん [sage] 2019/01/17(木) 21:30:07.38:Vm2XnGVD どうしてって、うーん、ただPCにOFFICEが入ってたから使ってるw javascriptもPerlとかも無料だし、大体どこでも使えるし何か買うほどやる気ないし…… あなたの思っていることは理にかなっていると思うよ、多分色々なことを知っててそれが出来れば視野も広がるって親切心なんだろう。 でも、なんつーか個人で使うだけだから脱線しててもやりたいことが短時間で出来ればいいっていう視点もまぁ理解して欲しい。困ったら聞くかもしんないけどお手柔らかに頼みますw あとありがとう。 : デフォルトの名無しさん [sage] 2019/01/17(木) 21:48:09.40:3qXsUeDf IEが消えりゃVBAでスクレイピングなんてのも消えるし そう遠い未来じゃない : デフォルトの名無しさん [sage] 2019/01/17(木) 23:47:45.37:1381LMvg 俺もそんな理由でVBS使ってるわ。 本当は専用の開発ソフト欲しいけど、 やろうと思えばメモ帳だけで出来なくもない、ってのが曲者。 : デフォルトの名無しさん [sage] 2019/01/18(金) 00:09:50.30:3Aai6ayN うーんどうやら開発ツールを申請できない/入れてもらえない会社が無視できないくらい存在する、 というのはデタラメじゃなかったんだな : デフォルトの名無しさん [sage] 2019/01/18(金) 00:58:32.59:ld1N2+LD 無視できないくらいってどのくらいだよw : デフォルトの名無しさん [] 2019/01/18(金) 04:56:39.52:iqHxmsyd 馬鹿には入れさせないだけ : デフォルトの名無しさん [sage] 2019/01/18(金) 08:20:26.64:FdTpqa5z 別にわざわざでは無いけどね。 一瞬で出来るんだわ。 それ用のツールを昔、作ったんでね。 それは仕事の規模によるだろ。 それに、こっちも入れる迄もないと思ってるから申請なぞせんぞ。 VBAだとどうにもならない仕事が継続的に続くなら申請するんだろうが。 : デフォルトの名無しさん [sage] 2019/01/18(金) 08:59:50.59:HmTdANXo まずOS標準のPowershellでできることをやる 規模が大きくなって型安全性などが欲しくなったら.net CLIとVSCodeを入れる VBAは本当にVBAが必要で他に選択肢がない場合にしょうがなく使う : デフォルトの名無しさん [sage] 2019/01/18(金) 09:13:15.26:FdTpqa5z なんでExcel標準のVBAを使わないのかねw バカじゃないの? : デフォルトの名無しさん [sage] 2019/01/18(金) 09:58:22.02:Xg90leRQ VBAは公式には「レガシー」で「非推奨」な機能だよ : デフォルトの名無しさん [sage] 2019/01/18(金) 10:27:15.84:02H4sO2V うちは無料ならツール申請すれば通常通るし、理由もそんなに掘り下げて詮索されることはない。 有料だととたんにハードルが上がるけど。 んでVisual Studioやらなんやら入れた後もVBAはがんがん使ってるな。 C++/C#と比較してもアドバンテージはあると思うよ。 ちなみにPowershellは起動できないようになってる。権限の問題だから単なるインストール申請よりハードル上がるとおもう。 : デフォルトの名無しさん [sage] 2019/01/18(金) 12:01:36.56:dGgLcYHd C# を禁止せずに PowerShell 禁止とか意味わからん まあよくわかってない情シスとかが決めてたりするんだろうな : デフォルトの名無しさん [sage] 2019/01/18(金) 12:06:44.97:Xg90leRQ そりゃ情シスなんかちょっとだけ意識高いPCユーザーに過ぎないんだから、その辺の層の人にとってexeは怖いでしょ PowerShellなんか所詮テキストファイルだから安心 : デフォルトの名無しさん [sage] 2019/01/18(金) 12:54:22.16:FdTpqa5z PowerShellはデフォルトで実行出来ないでしょ。 で、実行できるようにして良いかが問題となる。 : デフォルトの名無しさん [sage] 2019/01/18(金) 13:32:03.41:ld1N2+LD うちは共有pcだと社員の個人情報とか社外秘のデータも扱っているから 情報漏洩やコンプライアンスはうるさいんだよね そういうの適当な会社がうらやましいよ : デフォルトの名無しさん [sage] 2019/01/18(金) 13:46:56.62:dGgLcYHd ??? 禁止してるのはテキストファイル(PowerShell)の方だよ? : デフォルトの名無しさん [sage] 2019/01/18(金) 13:52:14.57:dGgLcYHd > PowerShellはデフォルトで実行出来ないでしょ。 できるよ powershell -ExecutionPolicy RemoteSigned xxxx.ps1 ってやるだけ : デフォルトの名無しさん [sage] 2019/01/18(金) 15:05:03.66:u9bkOu0s PowerShellデフォルトでスクリプト実行できないのは致命的。 「え?デフォルトからセキュリティ弛めるの?大丈夫なの?」ってなる。 : デフォルトの名無しさん [sage] 2019/01/18(金) 15:58:31.39:N2j3ka14 : デフォルトの名無しさん [sage] 2019/01/18(金) 18:10:43.98:u9bkOu0s ウザっ : デフォルトの名無しさん [sage] 2019/01/18(金) 18:21:14.18:FdTpqa5z それをどこでやるの? 当然ダブルクリック1発でできるんだよね。 もしかしてそのためにバッチファイルも作るとか言わんよな。 : デフォルトの名無しさん [sage] 2019/01/18(金) 18:36:02.88:dGgLcYHd やれる/やれないの話な 後出しでダブルクリックガーとか恥ずかしすぎるだろ w ちなみに若干トリッキーだがバッチファイルにPowerShellのソースを入れちゃうこともできる : デフォルトの名無しさん [sage] 2019/01/18(金) 19:50:38.17:BPWAMvDw ExecutionPolicyはCurrentUserスコープなら権限不要で変更可能 陽 この情報はプロならみんな知ってるけどアマチュアは知らない人が多いね : デフォルトの名無しさん [sage] 2019/01/18(金) 20:36:05.00:3Aai6ayN 実行の話じゃないでしょ : デフォルトの名無しさん [sage] 2019/01/18(金) 20:43:46.91:FdTpqa5z ??? 今まで何の話をしてたんだ? PowerShellの方がVBAより有利だと言いたかったんじゃないの? 君の発言を聞いてるとPowerShellはますます使いものにならないように感じるんだが、もしかして君は実はVBAの方が有利だと言いたかったのか? : デフォルトの名無しさん [sage] 2019/01/18(金) 21:06:07.91:dGgLcYHd > 今まで何の話をしてたんだ? > PowerShellはデフォルトで実行出来ないでしょ。 とか言う情弱がいたって話 w : デフォルトの名無しさん [sage] 2019/01/18(金) 21:45:43.94:WMbv0rpV あれ? ExcelってVBAをデフォルトで実行できたっけ? : デフォルトの名無しさん [sage] 2019/01/18(金) 22:19:33.59:dGgLcYHd まあ設定いるんだけど管理者権限は要らない PowerShell もが言うように管理者権限不要だけどはSet-ExecutionPolicyの-scopeを知らなかったんだろうな : デフォルトの名無しさん [sage] 2019/01/18(金) 23:37:19.13:c34mocfv 設定を変えなければ動かないことをデフォルトでは動かないというんじゃないかね 設定を変えるのが簡単かどうかは別問題だろ : デフォルトの名無しさん [sage] 2019/01/18(金) 23:49:44.04:LGpZNaP9 右クリックするだけだろ : デフォルトの名無しさん [sage] 2019/01/19(土) 00:13:36.27:Fjsb0QYM 既定では 右クリック→管理者として実行 右クリック→やWindowsPowerShellで実行 いずれも.ps1スクリプトは実行できない もまちがい 既定状態のPCでも powershell -executionpolicy remotesigned -file 'hoge.ps1' などと打てば自動的にプロセススコープで自作のスクリプトなどを実行可能 : デフォルトの名無しさん [sage] 2019/01/19(土) 02:49:20.82:S0ghMGDC PowerShell -Part 3 ttps://mevius.5ch.net/test/read.cgi/tech/1539074808/ : デフォルトの名無しさん [sage] 2019/01/19(土) 05:10:03.36:+IqL7b8U だからそんなこと言い出したらVBAだってディフォルトでは動かないって話 逆にPowerShellはオプションつければ設定変更なしに実行可能 要するにが情弱っていう事実は変わらない > もまちがい 話の流れを読めよ… 既にに書いてあることでドヤ顔されても困る w : デフォルトの名無しさん [sage] 2019/01/19(土) 06:27:03.00:wkXfpZQC VBAってデフォルトでは動かないんだっけ? マクロ入りファイルを開く時は許可か設定が必要だけど、新規ブックならいきなり使えたような 再インストールして確認するのは面倒だからうろ覚えだけど : デフォルトの名無しさん [sage] 2019/01/19(土) 07:08:08.04:fPDnzLoP VBAはそもそもオフィスのインストールという過酷な作業が必要だからな アマチュアの事務員さんは用意されたパソコンを使うだけだから知らないのかもしれないがな プロはプロジェクトのたびに全員のパソコンを誰かが準備しなきゃならんのよ オフィスのインストール作業は地味にでかい工数になるんだ : デフォルトの名無しさん [sage] 2019/01/19(土) 08:17:46.72:pNQS4Xn+ デフォルトで信頼されてる場所のファイルでも動かなかったっけ? 大昔のエクセルならデフォルトでどこでもマクロ動いてたけどなw : デフォルトの名無しさん [sage] 2019/01/19(土) 10:55:07.59:gJfblIQ2 実行するファイルとは別に呼び出す仕組みを用意する必要があるからpowershellがクソだって言われてるのが分からないのか? 頭悪すぎない? : デフォルトの名無しさん [sage] 2019/01/19(土) 11:03:22.61:Fjsb0QYM 実行スコープを細かく規定出来るのは進歩。クソだとのたまうアホはセキュリティ意識がおかしい : デフォルトの名無しさん [sage] 2019/01/19(土) 11:07:55.26:OmtBIHUo 右クリックするだけだろ : デフォルトの名無しさん [sage] 2019/01/19(土) 11:12:21.71:gJfblIQ2 そのスコープを組み込めない時点で終わってるという話をしているんですよ? : デフォルトの名無しさん [sage] 2019/01/19(土) 11:39:33.19:fPDnzLoP スコープを組み込む この言葉の意味がよくわからんので詳しく説明してみて : デフォルトの名無しさん [sage] 2019/01/19(土) 11:47:23.37:fPDnzLoP vbaもエクセルファイル自体が実行可能な訳じゃなくエクセルというプログラムが解釈してやってるだけ なのでvbaも別に呼び出す仕組みが必要と言っていい その仕組みは膨大なインストール時間とライセンス料金を支払ってオフィスをインストールするという苦行を乗り越えないと利用できない それに比べたらパワーシェルは実行までの手間は殆ど無視できるほど小さい シェルでたったの1行コマンドレットを打つだけでOK しかも無料なので嬉しいね : デフォルトの名無しさん [sage] 2019/01/19(土) 11:47:30.68:gJfblIQ2 OSのデフォルト状態で出来ることが前提 拡張子が.ps1の場合右クリックのメニューにremotesingedを表示させるとか? : デフォルトの名無しさん [sage] 2019/01/19(土) 11:51:02.97:8CGfSDeG もうその話はpowershellのスレに移動してやってください : デフォルトの名無しさん [sage] 2019/01/19(土) 11:51:52.41:1cEunHBW > 実行するファイルとは別に呼び出す仕組みを用意する必要がある はあ? 情弱自慢かよww : デフォルトの名無しさん [sage] 2019/01/19(土) 12:11:34.94:lm8WiCyM 現実社会では話ができない寂しい「プロ」」のプログラマどもが何やらくだらん 雑談をしてスレを潰してるけど質問者の皆さんはそんなヨタ話に付き合う必要 はありませんので、遠慮なく質問をどぞ〜 : デフォルトの名無しさん [] 2019/01/19(土) 12:14:32.41:oaSrkPrl ところでホンマにブロなん?プロさんて?なんかあやしいんですけどw : デフォルトの名無しさん [sage] 2019/01/19(土) 12:25:03.26:4FsWRGgY Officeインストールするしないがオプションなんて事業所あるの? : デフォルトの名無しさん [sage] 2019/01/19(土) 12:40:58.29:wkXfpZQC 厳密な定義や資格があるわけじゃないんで「プロ」を名乗るのは自由です : デフォルトの名無しさん [sage] 2019/01/19(土) 13:14:50.16:fPDnzLoP そりゃもちろんあるよ 禁止してる事業所だってある そもそもOS違いで使えないこともある : デフォルトの名無しさん [sage] 2019/01/19(土) 13:21:53.40:+IqL7b8U うちの会社は開発専用機にはインストールしないけどそういう機器は自分でセットアップするからなぁ の言うプロジェクトの度に準備とかはよくわからんな : デフォルトの名無しさん [sage] 2019/01/19(土) 13:26:53.56:4FsWRGgY CADなんかの専用ソフトしか動かさんとか開発機とかそういうのならわかるけど、 このスレで話題にする以上関係ないというか対象外でしょ : デフォルトの名無しさん [sage] 2019/01/19(土) 13:35:07.44:Fjsb0QYM 普通はイメージで展開して、個別はライセンス認証だけっしょ一台数分 : デフォルトの名無しさん [] 2019/01/19(土) 14:06:33.45:/+FUwnIm へえ、ExcelってOSのデフォルト状態で使えるんだ? : デフォルトの名無しさん [] 2019/01/19(土) 14:46:59.67:Qiw5pxsO WSHだろ常考 : デフォルトの名無しさん [sage] 2019/01/19(土) 15:22:25.47:wiNfQeeu 例えば、クリップボードでも、Ruby から、powershell コマンドを呼ぶ。 a.rb str = `powershell Get-Clipboard` str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換 これをダブルクリックで起動したいのなら、バッチかVBS で起動する。 a.bat ruby .\a.rb テキスト処理は、VSCode, Rubyで十分! : デフォルトの名無しさん [sage] 2019/01/19(土) 15:49:39.46:BW5TF7JU VSCodeは個別にライセンスのある膨大な数のオープンソースソフトウェアの塊であり、 PowerShellを禁止しているような糞組織のPCにインストールすることは不可能 RubyもライセンスにGPLの文字を見つけた途端に情シスが卒倒するレベルで全くもって論外 : デフォルトの名無しさん [] 2019/01/19(土) 21:28:25.59:AuMD8hxP プロさんてバカしかおらんの? : デフォルトの名無しさん [sage] 2019/01/19(土) 21:35:07.05:+IqL7b8U 所詮自称プロだしw : デフォルトの名無しさん [] 2019/01/19(土) 21:40:37.46:AuMD8hxP 開きなおるなバカ : デフォルトの名無しさん [sage] 2019/01/19(土) 22:05:47.19:+IqL7b8U 開き直り? 嘲笑って意味わかる? w : デフォルトの名無しさん [sage] 2019/01/19(土) 22:06:05.61:ARTGttMK excelってVBAからpythonに変わるっていってなかったっけ? : ◆QZaw55cn4c [sage] 2019/01/19(土) 22:08:25.92:KpXpzNLK いってるだけ、今のところは : デフォルトの名無しさん [sage] 2019/01/20(日) 00:48:58.52:QFn18v7i dictionaryに格納してるItemを検索して、存在してればKeyを返却する方法が知りたいのだけど、ループさせてヒットしたら値を出す方法以外でfind的な一発でポンと返す記述の仕方はない? : ◆QZaw55cn4c [sage] 2019/01/20(日) 01:04:30.85:yiNhGfDQ Item 間に順序関係があればそれを利用して二分探索を適用できる、無論、記述はループチェックに比べて量が多くなる : デフォルトの名無しさん [sage] 2019/01/20(日) 03:54:11.74:IAu7YphR 一行で書きたいということなら、文字列ならワークシート関数Matchで検索できます。 ただ存在しなかった場合はエラーが返るので例外処理か事前に調べておく必要があります。 例) Dim map As Dictionary Set map = New Dictionary map.Add "みかん", "橙" map.Add "りんご", "赤" map.Add "さくらんぼ", "赤" map.Add "ぶどう", "紫" On Error Resume Next Debug.Print map.Keys(WorksheetFunction.Match("赤", map.Items, 0) - 1) 'りんご Debug.Print map.Keys(WorksheetFunction.Match("白", map.Items, 0) - 1) 'エラー On Error GoTo 0 個人的には普通に関数作った方が使いやすいと思います。 : デフォルトの名無しさん [sage] 2019/01/20(日) 08:04:01.23:cWi8furK Excel.Application.Onkey で最優先ショートカットキーにできる 次いで.macroOptionsの古いほうが動くよ : デフォルトの名無しさん [sage] 2019/01/20(日) 08:25:03.17:KJwN8fo6 配列とかコレクションに対してSQLが使えればいいんだけどな。 matchやvlookupより速いんだけど、いちいちシートとかcsvに書き出さなきゃならん。 : デフォルトの名無しさん [sage] 2019/01/20(日) 09:17:44.39:OfXqqqKI そこまで行くとAccessのお仕事を食っちまう : デフォルトの名無しさん [sage] 2019/01/20(日) 09:22:18.21:1t0h4eLG Access VBAでやればいいじゃん : デフォルトの名無しさん [sage] 2019/01/20(日) 09:32:11.24:brNktcWU おっと、回答いただけるとは。 onkeyだと、activeworkbookだろうが、thisworkbookだろうが、後定義したほうが上書き、後勝ちしません? active側に定義されたショートカットがそれぞれ反応してくれると嬉しいのですが。 : デフォルトの名無しさん [sage] 2019/01/20(日) 10:54:01.49:mVpLWWyp MSにExcelでC#使えるようにしてくれ〜 って要望をガンガン出せばお前の望みが叶うかも知れない : デフォルトの名無しさん [sage] 2019/01/20(日) 13:02:37.66:QFn18v7i ,581 ありがとう Itemには順序関係ないから二分探索は出きなさそう worksheet関数は完全に意識無かったので見た瞬間にあぁ!その手があったか!と目からウロコでした : デフォルトの名無しさん [sage] 2019/01/20(日) 13:13:34.11:k7Xn9dKz C#スクリプトってOSSで軌道に乗っちゃってるからExcelの処理系として採用されることはないと思うぞ 同じものをClosedで再発明するってのも馬鹿馬鹿しいしな 強力な言語を使いたいならその言語を主としてExcelをコントロールすればいい それで十分だ わざわざExcelに乗っける必要性は薄い : デフォルトの名無しさん [sage] 2019/01/20(日) 13:31:13.08:mVpLWWyp 再発明とか意味わからん w : デフォルトの名無しさん [] 2019/01/20(日) 16:43:57.95:tNp2z70l この場合の再発明と言われれば車輪の再発明を連想出来ないのはかなり緩いんだろう : デフォルトの名無しさん [sage] 2019/01/20(日) 17:26:38.62:GHMQXw/N 文脈的には再発明と言うより再実装かな : デフォルトの名無しさん [sage] 2019/01/20(日) 17:32:05.81:mVpLWWyp いや、車輪の再発明はいいとして何を再発明するんだよって話 C#処理系のソースライセンス見てないけどMSが自社製品に使えなくなるようなライセンスにはなってないだろうし(なってたらVisual Studioの有償版とか売れなくなる) 普通にExcelに組み入れるだけだろ : デフォルトの名無しさん [sage] 2019/01/20(日) 17:45:17.54:TQeakhfS メンテナンスのコストを甘く見すぎ Excelに入れるなら最低でも以後10年は完全な互換性を維持し続けなきゃいけないわけ 今メインストリームのC#環境を入れるなら.NET Coreを組み込むことになるだろうけど、 .NET Coreって完全なサイドバイサイドを前提にガンガン破壊的変更をぶっ込んでいくスタイルだから、 Excelのバージョンアップのときに単純に.NET Coreのバージョンを上げるわけにはいかなくて、 Excel専用のブランチを作って継続的にメンテしていかざるを得ないの それは実質的には新たに.NETの兄弟分を作って独立して育てていくことに他ならず、多大なメンテナンスコストを生じる上、 .NET エコシステムの分断を生むことになる そんな馬鹿げたことをするくらいなら普通に.NET Coreを直接使わせた方が遥かにマシだろう : デフォルトの名無しさん [sage] 2019/01/20(日) 17:59:54.91:mVpLWWyp > Excelに入れるなら最低でも以後10年は完全な互換性を維持し続けなきゃいけないわけ それVBAの開発担当者にも言ってくれよ w : デフォルトの名無しさん [sage] 2019/01/20(日) 18:07:02.56:TQeakhfS 煽りはいいから直近10年でVBAに対して行われた破壊的変更を具体的に挙げてくれよ 当たり前だが不具合の話はしてないぞ? : デフォルトの名無しさん [sage] 2019/01/20(日) 18:28:52.57:mVpLWWyp いや破壊的かどうかは別にしてもVBAも色々機能追加とかされてるだろ VBAの機能追加をやめてそのリソースをC# for Officeに割くだけだよ そもそもMac版はともかくWindows版のOfficeなら.NET Coreじゃなくて.NET Framework上に構築するだろうしな : デフォルトの名無しさん [] 2019/01/20(日) 18:31:24.08:wKV5+GB/ みっともないからいいかげん止めや似非プロさんの一人語り そもそも出鱈目やってバレバレのプロ風の話して誰に対してマウント取りたいねんw : デフォルトの名無しさん [sage] 2019/01/20(日) 18:46:13.28:TQeakhfS Full .NET はメンテナンスモードに入ったよ 4.8を最後に、今後大きな機能追加はない 残念ながら、今入れても新たに時代遅れのゴミが増えるだけだ : デフォルトの名無しさん [sage] 2019/01/20(日) 20:02:31.83:mVpLWWyp 逆に都合がいいじゃん .NETFrameworkは簡単に廃止できないから君が大事にしてる互換性も保ちやすいしね : デフォルトの名無しさん [sage] 2019/01/20(日) 22:44:30.32:aU4dkoPo A4用紙に上から4件ずつ異なるデータを入力して、 印刷したいのですが、どうすればいいか教えて下さい。 データ数は日によって異なり、30件〜50件程度あります。 1ページ目に1〜4、2ページ目に5〜8・・・という感じです。 うまく説明出来なくてすいません。 4つデータを入力して印刷したら次、っていう感じの ループ処理のコードのサンプルなどありましたら教えてください。 : デフォルトの名無しさん [sage] 2019/01/20(日) 22:48:25.28:GTDVzsz1 改ページを設定すればいいだけじゃね? ttp://https://kosapi.com/post-3244/ : デフォルトの名無しさん [sage] 2019/01/20(日) 22:55:12.40:aU4dkoPo ありがとうございます。 : デフォルトの名無しさん [sage] 2019/01/21(月) 09:00:45.75:MgnF8xe3 このループw 他言語を推奨してる奴らには馬鹿しかいない。 ExcelVBAのスレなんだからExcelが動いてるのが大前提なんだよ。 そこへノコノコ乗り込んで来てOfficeインスト―ルとか言ってる馬鹿は滑稽。 テキスト処理とかもアホ丸出し。 Excel関係無いなら、そもそもVBAでやる必要全く無い。 そして全くのスレ違い。 : デフォルトの名無しさん [sage] 2019/01/21(月) 09:04:27.40:MgnF8xe3 その後のC#やPythonを組み込んでくれって話はどうでもいい。 入って来たらそれで組むだけだ。 : デフォルトの名無しさん [sage] 2019/01/21(月) 10:06:31.18:NbFzEAOW 終わった話にノコノコ乗り込んでくるウスノロかよww : デフォルトの名無しさん [sage] 2019/01/21(月) 12:17:14.05:HulQp10o 言われてみればVBAの破壊的仕様変更ってまったく無いよな。 オブジェクトを省略してて挙動が変わったくらいならあるけど。 64bit対応くらいじゃ無いか? : デフォルトの名無しさん [sage] 2019/01/21(月) 16:29:48.24:0Hj4ohcs LongPtr型とPtrSafe宣言くらいか : デフォルトの名無しさん [sage] 2019/01/21(月) 20:06:20.50:mtdQDW0I ただパッチいれたら動かなくなったことはあった : デフォルトの名無しさん [sage] 2019/01/21(月) 20:57:18.88:MgnF8xe3 2007の時、グラフ周りが軒並み動かなくなったことはあったな。 : デフォルトの名無しさん [sage] 2019/01/21(月) 22:36:48.74:+ZXh/xZN 改ページ位置の誤検出がヒドイ。 一旦、改ページプレビューにしてから戻せば大丈夫ですとか、何だよそれ。 : デフォルトの名無しさん [sage] 2019/01/21(月) 23:15:39.37:liT1rB8S 64bitはスクリプトオブジェクトがないとかは? : デフォルトの名無しさん [] 2019/01/22(火) 00:07:05.98:TC75Tgsq よろしくお願いします。 あるシートのコピーだけを新規の別ファイルとして保存したいのですが、 1 dim fn as string 2 fn="c:\*****\集計表.csv" 3 ThisWorkbook.Worksheets("集計表").Copy 4 Application.DisplayAlerts = False 5 ActiveWorkbook.SaveAs fileName:=fn, FileFormat:=xlCSV 6 ActiveWorkbook.Close このように書きました。普通だと問題なくいっているのですが、この処理をしている途中で、 使用者がガチャガチャとマウスをイジり、いくつも開いているうちの適当なブックをアクティブにしてしまった りなどしてると、想定通りの動作をしなくなってしまいます。 3行目でコピーしたときに、コピー先のその新しいブック自体を名指しできれば、いいのではないかと 思うのですが、いかがでしょうか? 「ActiveWorkBook」ではなく、ちゃんと名指しする方法ってないでしょうか? : ◆QZaw55cn4c [sage] 2019/01/22(火) 00:33:28.43:zFHfz07h いろいろな事情があって、ExcelVBA に専心することになりそうです…Excel VBA から任意の win32api を呼び出すことは可能ですか? : デフォルトの名無しさん [sage] 2019/01/22(火) 00:44:54.38:KMNb7p7Q 処理中いじるなと表示させたフォームをモーダルにして処理終わるまで×ボタン消しとくとかは? : デフォルトの名無しさん [sage] 2019/01/22(火) 02:38:45.16:WVGq8ekA activeじゃなくてもsaveできるだろ : デフォルトの名無しさん [sage] 2019/01/22(火) 05:03:39.16:1xYsQegz 方法1:新規ブックはWorkbooksコレクションの末尾に追加されるはずなので、Workbooks (Workbooks.Count)で参照できます。 方法2:先に新規ブックを作っておけば参照出来ます。 余計な新規シートが触られる不安があるなら削除する必要があります※ 例) With Workbooks.Add Dim fn As String: fn = "c:\*****\集計表.csv" Worksheets("集計表").copy Before:=.Worksheets(1) Application.DisplayAlerts = False Dim elem As Worksheet '※ For Each elem In .Worksheets If elem.Name <> "集計表" Then elem.Delete Next elem .SaveAs Filename:=fn, FileFormat:=xlCSV .Close End With 方法3:集計表なので数式が入っていると思いますから、Copy時のCalculateイベントでシート自身に保存させます。 例) Private Sub Worksheet_Calculate() If Worksheets.Count > 1 Then Exit Sub 'Copyされた単一シートか判定 Dim fn As String: fn = "c:\*****\集計表.csv" Application.DisplayAlerts = False ThisWorkbook.SaveAs Filename:=fn, FileFormat:=xlCSV ThisWorkbook.Close End Sub 上記を集計表シートのシートモジュールに書き込むと、Worksheets("集計表").Copy だけで自動的に保存されます。 : デフォルトの名無しさん [sage] 2019/01/22(火) 05:11:20.49:1xYsQegz Worksheets("集計表").copy ↓修正 ThisWorkbook.Worksheets("集計表").Copy 👀 Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b) : デフォルトの名無しさん [sage] 2019/01/22(火) 08:07:57.46:rTM/luD7 トリッキーな技が技があるかもだけど「任意の」となると単独では無理と思った方がいい : デフォルトの名無しさん [sage] 2019/01/22(火) 08:14:29.14:J7GVb3Rk 任意ってのはどういう意味? 動的に呼び出したいってこと? それだったらかなり高度になる。 : デフォルトの名無しさん [sage] 2019/01/22(火) 12:45:48.79:/p6ZcYuK declareで追加するだけでしょ ぐぐればサンプル大量に出てくるし 高度でもない : デフォルトの名無しさん [] 2019/01/22(火) 13:00:35.87:/wbMKv3O 厚生省の中の人がプログラムで不正するように描いてたのってExcel? : デフォルトの名無しさん [sage] 2019/01/22(火) 14:06:11.20:Hs2/RF8Y あれはファイルの更新日をいじっただけだったはず(開いて上書き保存かもしれんが) : デフォルトの名無しさん [sage] 2019/01/22(火) 16:11:53.74:twW7M/a9 関数間違えたって報道されてなかったっけ : デフォルトの名無しさん [sage] 2019/01/22(火) 20:39:31.87:J7GVb3Rk それは静的に呼び出すということ。 動的の場合は、LoadLibraryとかGetProcAddressとかを使う話になる。 昔、調べまくってサンプル作ったことあるけど、何でも自由に動かせるものじゃなかった。 というより殆どのAPIは動かなかった記憶が。 : デフォルトの名無しさん [sage] 2019/01/22(火) 20:52:29.66:nExxZ55X LongPtr型とPtrSafe宣言ってそれぞれどういうときに使うんですか? : デフォルトの名無しさん [sage] 2019/01/22(火) 20:59:55.76:IR20P2NM どっちも64bitでAPI呼ぶ時に使うけど、ほかの使い方は知らん : デフォルトの名無しさん [sage] 2019/01/22(火) 22:38:47.81:CihaJZ6+ Excelはどのくらいポリゴン表示出来るの? 1. PS並み 2. PS2並み 3. PS3並み 4. PS4並み : デフォルトの名無しさん [] 2019/01/23(水) 00:32:34.72:glGBkXdT 5. PS5並み : デフォルトの名無しさん [sage] 2019/01/23(水) 00:54:57.75:26O4EHUh 今のPCならオートシェイプで3DレンダリングしてもPS1には楽勝だろう : デフォルトの名無しさん [sage] 2019/01/23(水) 01:22:36.39:xNUzgFQe ありがとうございました! : デフォルトの名無しさん [sage] 2019/01/23(水) 03:00:22.02:aTlBVQjl ttp://http://blog.livedoor.jp/genkimaru1/archives/2095759.html : デフォルトの名無しさん [sage] 2019/01/23(水) 13:19:24.15:dfxLcevf 闘神伝のエリスのシースルーは再現可能ということですね。 : デフォルトの名無しさん [] 2019/01/23(水) 13:59:08.25:b9b+73n9 馬鹿には無理 : デフォルトの名無しさん [sage] 2019/01/23(水) 15:57:45.44:uebkOjvn もともと「任意の」APIだったのが途中から動的に呼び出す話になってる : デフォルトの名無しさん [sage] 2019/01/23(水) 16:19:34.41:CpZRwgZL 回答者の連中が勝手に条件を考えて話をややこしくするのも 質問者がそれを修正しようとしないのもこのスレのお約束 : デフォルトの名無しさん [sage] 2019/01/23(水) 17:37:28.67:uebkOjvn だいたいDeclareなしに呼び出さなきゃいけない要件なんてあるか? 候補となるAPIの範囲なんてどう考えても限られてるだろう。 ジグネチャ情報ごと外部からもらうのか? : デフォルトの名無しさん [sage] 2019/01/23(水) 21:06:47.46:e5qX8jhS プラグインdllを呼び出すような要件だな。 プラグインdllを指定のフォルダに入れてもらうようにしておいて、呼び出し方はこちらで決めておく。 指定フォルダからdllファイルを列挙して、ファイル名と、決められた通りの呼び出し方で呼び出すやり方になるからDeclareは使えない。 まあ、めったに無いだろう。 「任意」の意味がよく分からん。 動かしている最中に「任意」のAPIを呼び出したいという意味かと思った。 それともcdecl呼び出しのAPIは基本的に出来ないっていうような話をすれば良かった? まあ、DispCallFuncでゴニョゴニョで出来るんだけども。 : デフォルトの名無しさん [sage] 2019/01/23(水) 22:47:22.53:9/VHRHNs VBAでは(トリッキーなことしないと)作れない引数型のAPIのこととかじゃね? : デフォルトの名無しさん [] 2019/01/24(木) 09:54:58.66:9Yy7hd5n 初歩的かもしれない質問でお恥ずかしいのですが、知恵をお貸しいただきたいです。 1年の中で最大の数値が含まれる日付の値全てを別シートに貼り付けるというVBAプログラムを作成したいです。 また、この場合の1日とは前後1日分ではなく、その時間が含まれる1日の事です。 例えば、30分毎の売り上げ金額が入力されたexcelシートが1年分あるとします。 1年間の中で最大の売り上げ金額が、2018/2/14 12:30に存在すると仮定します。 その場合に、2018/2/14 0:00〜 2018/2/14 23:30 の値を抜き出し、別シートに貼り付けるというプログラムを作成したいです。 データの形は、 2018/2/14 0:00 300 2018/2/14 0:30 200 ・ ・ ・ 2018/2/14 23:30 500 のようになっています 自分でも一通り調べてみたのですが、どうしてもしっくり来るものが見つかりませんでした。 どうぞよろしくお願い致します。 : デフォルトの名無しさん [] 2019/01/24(木) 12:17:49.04:6DEMoFXg おまえは頭が悪くて他人にものを教えられる様な人間やない ちゅう事をそろそろ思い知った方が幸せになれるで : デフォルトの名無しさん [sage] 2019/01/24(木) 12:27:34.76:kIY0kOtD 問題を分割して考えよう 1. 最大の値を持つ行(と言うか日時)を取得する → 最大日時とする 2. 以下を最初の行から最後の行までループする 2.1 行が持つ日時と最大日時の日付部分だけ比較する 2.2 日付部分が合致してたらコピーする で、どこがわからないの? : デフォルトの名無しさん [] 2019/01/24(木) 12:37:36.92:6BCdjRMd 調べるだけで頭を使っていないのだからわかるわけない ゆとり教育世代にありがち : デフォルトの名無しさん [sage] 2019/01/24(木) 12:38:49.74:FgOMH45t 自分が頭が良いということを全く証明もせずに絡んで来られても困るんだがw こういう絡み方で頭悪そうだとは思うけどね。 : デフォルトの名無しさん [] 2019/01/24(木) 12:55:51.34:6DEMoFXg 実にバカらしい困り方やね : デフォルトの名無しさん [] 2019/01/24(木) 13:12:21.15:Ay2CLdQj マウント取りたいだけの老害 なんの生産性もないからやめた方がいいよ : デフォルトの名無しさん [] 2019/01/24(木) 13:13:31.30:+O0AGYtG hoge.dll だけあるときに hoge.def を作りたいんだけどどうすればいい? : デフォルトの名無しさん [] 2019/01/24(木) 13:38:55.05:pEQDGUsa 悔しかったか、ゆとり世代 : デフォルトの名無しさん [] 2019/01/24(木) 14:52:02.40:DfMDGTcZ おっしゃる通り1つずつこなしていきたいと思います。 最大値を取得する所まではなんとかなりましたが、最大値が入っているセルの左からoffsetによって値の取得をしようとしています。しかしエラーが出てしまい(91エラー)詰まっています。 : デフォルトの名無しさん [sage] 2019/01/24(木) 14:57:02.89:xR9TqB96 defファイルってビルドの時に使うもんだけど? : デフォルトの名無しさん [] 2019/01/24(木) 15:26:49.03:ou4FYlNm 馬鹿過ぎだろ もっと悩んでから来い、ゆとり : デフォルトの名無しさん [sage] 2019/01/24(木) 15:36:46.38:xR9TqB96 罵倒芸術? : デフォルトの名無しさん [] 2019/01/24(木) 15:53:26.03:DfMDGTcZ そうします ありがとうございます : デフォルトの名無しさん [sage] 2019/01/24(木) 16:52:58.88:90ICJGKL お前なにしにきてんだここに。 最低だな、人として。 : デフォルトの名無しさん [sage] 2019/01/24(木) 17:31:43.23:uc3iE4iQ で答えを教えてもらっても理解できないような頭の悪さが問題だろう。こんな頭の悪い奴はプログラムするなと俺は思う。 : デフォルトの名無しさん [] 2019/01/24(木) 17:52:28.54:Ay2CLdQj ほー くらいの天才になると最初からプログラム完璧に理解できたらしいな 凄い凄い めげずに頑張ってくれよ だれでも最初は初心者だ : デフォルトの名無しさん [sage] 2019/01/24(木) 18:00:27.00:A3Pe4Ldy VB6で作ったADOを使ってデータベースからエクセルシート名をComboBoxに入れるソフトがあって、それをwindows10で動かすとエラーで止まるんだけど原因分かりますか? シート名が一文字の時だけエラーが出るのは分かったけど何か理由だと思いますか? : デフォルトの名無しさん [] 2019/01/24(木) 18:15:16.93:pEQDGUsa ここが何のスレだかわかってるか、馬鹿 : デフォルトの名無しさん [sage] 2019/01/24(木) 18:58:14.37:5lzQ1hz1 その日付でアドバンスフィルタ。 検索する側の日付と、検索される側の日付は、 何型でもいいから統一する。 LeftやMidと"/"を組み合わせとか、 Format(日付, "yyyy/mm/dd")とか適当に。 : デフォルトの名無しさん [sage] 2019/01/24(木) 19:06:26.31:5lzQ1hz1 アドバンスフィルタが何なのかわからなかったら、 フィルタオプションの設定の使い方を覚えて、 マクロの自動記録をするといい。 ちなみに、ループより激速だから。 : デフォルトの名無しさん [sage] 2019/01/24(木) 19:32:10.91:fZR3dOZW Ruby で作った # 各行は空白で区切った、3列の配列。 # 全行は各行の配列、つまり配列の配列 all_rows = File.readlines( "input.txt" ).map( &:split ) # row[ 2 ]、金額が最大数値の行を求める p max_row = all_rows.sort_by { |row| row[ 2 ].to_i }.last # 全行からrow[ 0 ]、同じ日付の行だけを集める p all_rows.select { |row| row[ 0 ] == max_row[ 0 ] } : デフォルトの名無しさん [sage] 2019/01/24(木) 21:13:39.94:52bEuJTy ここが何のスレだかわかってるか、馬鹿 : 661 [sage] 2019/01/24(木) 21:19:22.76:fZR3dOZW 修正 # row[ 2 ]、金額が最大数値の行を求める >p max_row = all_rows.sort_by { |row| row[ 2 ].to_i }.last p max_row = all_rows.sort_by { |row| row[ 2 ].to_i * -1 }.first last だと、最後まで配列を作ってしまう。 一方、first では最初の1つだけを求めるから、速い : デフォルトの名無しさん [sage] 2019/01/24(木) 22:01:17.17:KN/tNrgV は ボクタンンRubyが出来るんだぞぉおエライんだ。ボクタンンを褒めろぉぉお Rubyのスレでは褒める奴が居ないからここでエラぶりたいんだよぉお なウスラバカ : デフォルトの名無しさん [sage] 2019/01/25(金) 09:26:57.52:VDjD4/gW 他言語質問スレの質問をRubyで解答するスレでもたてれば? : デフォルトの名無しさん [sage] 2019/01/25(金) 10:27:26.03:OaoSScvY Rubyスレで相手にされず、ここならドヤ顔できるだろと思って来たのかw : デフォルトの名無しさん [] 2019/01/25(金) 12:18:15.80:aKVOVgYE プロさん荒ぶりまくっとってワロタw : デフォルトの名無しさん [sage] 2019/01/25(金) 12:37:49.55:kDiuvRrn Ruby信者くんどこのスレでもKYだよね : デフォルトの名無しさん [] 2019/01/25(金) 12:52:29.05:EnRgcOgq dumpbin /exports hoge.dll と lib /def:hoge.def でいけるな : デフォルトの名無しさん [sage] 2019/01/25(金) 19:43:02.79:EKURiA+R DispCallFuncって最近また流行ってるの? : デフォルトの名無しさん [sage] 2019/01/26(土) 07:48:55.80:SzhvFgNa Private Function getIE(arg_title As String) As InternetExplorer ↑ こういう書き型ってどういう意味になるんですか? 普通に関数を作るなら private fanction 関数名(ByVal 引数名 as 引数の型) みたいな形になると思うんですが 上記にあげた例でとくに引数を()で閉じた後のas InternetExplorerの部分がよくわかりません : デフォルトの名無しさん [sage] 2019/01/26(土) 08:30:57.60:0//Vwm17 "as 引数の型"の意味が理解できるなら "as InternetExplorer"は簡単に想像つくだろ : デフォルトの名無しさん [sage] 2019/01/26(土) 09:22:53.54:xtvWXKE/ Private Sub 関数名(引数名 As 引数の型) Private Function 関数名(引数名 As 引数のデータ型) As 戻り値のデータ型 : デフォルトの名無しさん [] 2019/01/26(土) 09:34:59.74:HSTKeB2g VBAやってるなんて恥ずかしくて言えないだろ? : デフォルトの名無しさん [sage] 2019/01/26(土) 09:38:00.59:+NbQI97A 中の処理を見ないとわからんけど、 そういう書き方をする場合、普通に考えたら、 getIEにInternetExplorerのオブジェクトがセットされて返ってくる。 : デフォルトの名無しさん [sage] 2019/01/26(土) 09:49:01.06:/P2VC+Mr タイトルバーの文字列からウィンドウを検索する関数だろ IE操作のサンプルとして、ネットでも本でも色んな所で見かけるやつ : デフォルトの名無しさん [sage] 2019/01/26(土) 09:59:33.30:0//Vwm17 あらたまって「俺VBAできます」なんて言うことは無いけど 問題の解決にVBAが最善なら偏見持たずに採用するよ : デフォルトの名無しさん [sage] 2019/01/26(土) 10:13:39.98:54XYYYdu 初心者に優しくなろうぜ : デフォルトの名無しさん [sage] 2019/01/26(土) 10:33:16.30:MaEquCGy どうしても使わなきゃならない場合にはVBAを使う なにも理由がなければこんなもの使わない方が精神的に健全 : デフォルトの名無しさん [] 2019/01/26(土) 10:56:55.38:z7S/RMkn Windows10のアップデート1809を適用したらcreateobject("InternetExplorer.application")でオートメーションエラー(実行時エラー -2125463506)が発生するようになりました。 これを回避する方法があれは教示ください。 : デフォルトの名無しさん [sage] 2019/01/26(土) 11:00:34.08:MaEquCGy 他の言語とSeleniumを使う : デフォルトの名無しさん [sage] 2019/01/26(土) 11:08:46.81:+NbQI97A 参照設定もInternetExplorerMediumもダメ? : デフォルトの名無しさん [] 2019/01/26(土) 11:09:00.46:z7S/RMkn 会社の方針でOffice以外のアプリや言語は使えません。そのため、VBAのみとさせてください。 : デフォルトの名無しさん [sage] 2019/01/26(土) 11:13:02.00:MaEquCGy ではIEも使えないのですね? : デフォルトの名無しさん [] 2019/01/26(土) 11:17:13.78:z7S/RMkn 参照設定はInternetcontrolsとHTML object libraryを設定しています。これは適用前と変わりません。 New InternetExplorerMediumでもおなじエラーが発生します。 1809適用前の他PCでは正常に動きます。 : デフォルトの名無しさん [] 2019/01/26(土) 11:18:26.43:z7S/RMkn すみません、クロームやエッジは使えませんが、IEは可能です。 : デフォルトの名無しさん [sage] 2019/01/26(土) 11:32:26.37:MaEquCGy なるほど状況はわかりました 問題の検証にはまず最初に他の言語が必要です パワーシェルの使用許可を取ってください : デフォルトの名無しさん [sage] 2019/01/26(土) 12:31:44.07:WRAGgpBx マジメな話、本当にダメなのかは思い込みの部分が多いんじゃないかと思うぞ : デフォルトの名無しさん [sage] 2019/01/26(土) 12:33:07.15:SzhvFgNa ありがとうございます。VBAは戻り値の型も指定できるんですね。 というか、思い出しました、C言語でも頭にstringとかintとかつけましたね。 あれが末尾に来てこういう書き方になると。 ありがとうございました。 : デフォルトの名無しさん [sage] 2019/01/27(日) 07:11:52.32:KwlBhw9C しかしVBAは良くて他がダメっておかしな話だな 使い勝手が違うだけで、大概の事出来ちゃうだろ : デフォルトの名無しさん [sage] 2019/01/27(日) 07:15:14.02:MJttX1my VBAの利用を推奨していないのは他でもないMSだ : デフォルトの名無しさん [sage] 2019/01/27(日) 07:25:44.98:v6cey9sT 逆に、C#にできてVBA+APIでできないことって何がある? : デフォルトの名無しさん [sage] 2019/01/27(日) 07:37:49.03:94l2cllZ ソフトウェアが端末毎に異なると動作検証の障害になるケース : デフォルトの名無しさん [sage] 2019/01/27(日) 07:53:57.32:e7HDIdYV もうよそいけよ : デフォルトの名無しさん [] 2019/01/27(日) 08:13:04.45:/fU4frLP IE参照とか終わっとる : デフォルトの名無しさん [sage] 2019/01/27(日) 08:29:08.12:MJttX1my そらWebアプリとかスマホアプリとかMac/Linuxとかゲームとか科学技術計算とかいくらでもある VBA(API, COMなし)で無理なく可能、かつExcelワークシート操作が必要な場合に態々C#を使うのはそれこそ馬鹿の一つ覚えだと思うけどね : デフォルトの名無しさん [sage] 2019/01/27(日) 08:59:08.57:DsJJt6N4 希に、変数が定義されてませんみたいなエラーが出るんだけど、何だろう? しかも変な位置で。 Dim a As Long : a = 1 Dim b As Long : b = 1 MsgBox a ←普通、aにエラーが出るとしたらここだけど、 Cells(a, 1).Value = b ←なぜかこの時点で出る Excelを再起動しても治らないんだけど、 3行目と4行目を入れ替えて、また戻すと治る。 わけわからん。 : デフォルトの名無しさん [sage] 2019/01/27(日) 09:48:02.97:UZak3JEV 参照設定を確認かな… : デフォルトの名無しさん [sage] 2019/01/27(日) 11:10:55.75:RJ6yXKbG 当方、excel2010の新しいブックでテストしても何の問題もなし : デフォルトの名無しさん [sage] 2019/01/27(日) 12:04:29.48:5DHtGtFO > MsgBox a で値は表示されてるのか? 表示されてるなら値はどうなっているのか? : デフォルトの名無しさん [sage] 2019/01/27(日) 12:48:15.98:TaAzn7Fo 全角空白とか混ざってない? マルチステートメントもやめよう : デフォルトの名無しさん [sage] 2019/01/27(日) 14:13:43.46:eEXpRKk5 マルチステートメント推進 : デフォルトの名無しさん [sage] 2019/01/27(日) 15:18:35.61:g3iq6aIo まじ? : デフォルトの名無しさん [sage] 2019/01/27(日) 16:30:18.65:DsJJt6N4 特殊なものはつかってないけど・・。 表示前にエラーになったから見てないや。 VBSで全角空白がダメなのは知ってるけど、VBAでは実行できてたので、気にしてなかった。 マルチステートメントって「:」使うやつ? : デフォルトの名無しさん [sage] 2019/01/27(日) 16:31:28.53:DsJJt6N4 ↑途中送信しちまった。 Constは1行で書けるのに、Dimが2行になるのが嫌なので、宣言は1行にしてる。 : デフォルトの名無しさん [sage] 2019/01/27(日) 16:33:56.14:DsJJt6N4 こっちは2013。 普通は問題ないんだよ。行を入れ替えて戻せば治るから、 構文的におかしいことも無いだろうし。 : デフォルトの名無しさん [sage] 2019/01/27(日) 18:01:05.46:OBIAkwM2 コードのコピペをミスったとかじゃないかな どこか編集すると大文字小文字や空白が自動的に修正されて直るとか : デフォルトの名無しさん [sage] 2019/01/27(日) 18:29:58.57:k4Sj+hy8 たぶんデバッグ中に宣言書いたりしたんやろ? そう言うことするとバグる。 一旦コードコピーして、モジュール作り直せばいいよ : デフォルトの名無しさん [sage] 2019/01/27(日) 18:33:24.52:qv2Aznbx そもそも1列目にはどんな数字が羅列されてるの : デフォルトの名無しさん [sage] 2019/01/28(月) 20:10:52.48:i9xb9DBB 1行目にデータを取って2行目に1行目を参照したmid関数を1行目と同じ数だけ用意したいのですが Dim m As Integer m = 1 'カウンタmを用意して1を設定 Do While Cells(m, 1) <> "" '1行目が空になるまでループ Cells(m, 2).Formula = "=mid(" & Cells(m, 1) & ",15,5)" '2行目には真横のセルを参照したmid関数を入れる m = m + 1 Loop これじゃダメなんですが、4行目のmid関数をセルに代入するとき相対的にcells(m,1)を参照させていきたいんですが どういう風に書けばいいんでしょうか? : デフォルトの名無しさん [sage] 2019/01/28(月) 20:41:36.83:9NcZtM+2 Cells(m, 2).Formula = "=MID(" & Cells(m, 1) & ", 15, 5)" Cells(m, 2).FormulaR1C1 = "=MID(RC[-1], 15, 5)" : デフォルトの名無しさん [sage] 2019/01/28(月) 20:42:27.70:9NcZtM+2 みすった Cells(m, 2).Formula = "=MID(" & Cells(m, 1).Address & ", 15, 5)" : デフォルトの名無しさん [sage] 2019/01/28(月) 20:47:12.92:i9xb9DBB ありがとうございます、いけました! : デフォルトの名無しさん [sage] 2019/01/29(火) 18:20:14.94:uYHQBjCX 1から30の乱数字を5回ループした合計を出したい。 同一数字が出ることをよしとした場合のコードってどんなですか? : デフォルトの名無しさん [sage] 2019/01/29(火) 18:28:48.64:ywRkqTQf For i = 1 To 5 s = s + Int(Rnd()*30+1) Next 細かいことを言うと、「同じ数字が出てはいけない」などの条件を付けた時点で、それは乱数じゃなくなる : デフォルトの名無しさん [sage] 2019/01/29(火) 19:08:34.73:+icPBYbY > 細かいことを言うと、「同じ数字が出てはいけない」などの条件を付けた時点で、それは乱数じゃなくなる べつに乱数が欲しいとは言ってないようだが? : デフォルトの名無しさん [sage] 2019/01/29(火) 19:40:09.62:dBY1qrqG 「乱数字」ってなんだ?初めて聞く言葉だゾ : デフォルトの名無しさん [sage] 2019/01/29(火) 19:42:57.71:LpX7EYli 日本語だと乱数、乱数字は中国語で同じ意味 : デフォルトの名無しさん [sage] 2019/01/29(火) 20:05:34.32:KErsf3wp つまり は中国の方ということね : デフォルトの名無しさん [sage] 2019/01/29(火) 20:10:45.02:aCb5tvGW randbetween(1,30)は? : デフォルトの名無しさん [sage] 2019/01/29(火) 21:04:31.66:t1GGJDgX WorksheetFunction.RandBetween 長いな : デフォルトの名無しさん [sage] 2019/01/29(火) 21:09:20.18:ZMlTx8zG 3D6+5とかをループ使わず一発で計算したいって質問なんじゃね? : デフォルトの名無しさん [] 2019/01/29(火) 22:06:13.32:5yOKK0P6 int(rnd()*146)+5 : デフォルトの名無しさん [] 2019/01/29(火) 22:13:12.12:TIeo+FQH ←これが世間でバグと言われるものです : デフォルトの名無しさん [] 2019/01/29(火) 22:19:46.43:5yOKK0P6 どこがバグ? : デフォルトの名無しさん [] 2019/01/29(火) 22:22:56.72:TIeo+FQH それぐらい自分で考えろやプロさんw 脳ミソついとらんかプロさんの頭にはw : デフォルトの名無しさん [sage] 2019/01/29(火) 22:40:58.72:2ngnqyHd お前が馬鹿 : デフォルトの名無しさん [sage] 2019/01/29(火) 22:57:33.37:ywRkqTQf もっと簡単な例で考えれば分かる 1〜6のサイコロ2個と、2〜12のサイコロ1個で合計7の出る確率は、前者は6/36=1/6、後者は1/11 結果(確率)がまったく違うから、同じプログラムとは言えない : デフォルトの名無しさん [] 2019/01/29(火) 23:02:31.19:TIeo+FQH ワイはの恥ずかしさをもっと掘りさげたいんやw : デフォルトの名無しさん [sage] 2019/01/29(火) 23:06:27.72:kf38Yh2H いつも思うんだが、どういう状況で使うんだよ。 Excelでゲームでも作るの? : デフォルトの名無しさん [] 2019/01/29(火) 23:13:55.62:TIeo+FQH 話をそらさずにもっとの恥ずかしさを語り明かそうやw : デフォルトの名無しさん [sage] 2019/01/30(水) 00:12:38.41:7kXOqwqB 数学の確率は人間の直感を裏切ることがけっこうあるから、慎重に扱わないと痛い目を見る : デフォルトの名無しさん [sage] 2019/01/30(水) 00:15:46.22:mmfL+KpI 乱数が欲しいんて書いてないし : デフォルトの名無しさん [sage] 2019/01/30(水) 00:18:07.14:yYgJ37mP 確率が直感に合わないのはほとんどの場合解釈を間違えてるだけ : デフォルトの名無しさん [sage] 2019/01/30(水) 00:21:14.29:Q4JlCs68 バグと確率の問題をすり替えて逃げてる馬鹿がいる。どこにバグがあるか指摘してみろや。 VBAしかしらない馬鹿どもが。 : デフォルトの名無しさん [sage] 2019/01/30(水) 00:26:30.71:4G8qGWeY 「乱数字」という言葉の意味がわからない限り、誰も何も回答できないわけだが 回答者が勝手に問題を作って議論を始めるいつものパターンになってるな : デフォルトの名無しさん [sage] 2019/01/30(水) 00:34:51.85:3ZvsJrgT 結果が意図と違っていたらバグ たとえば乱数でサイコロをシミュレーションするプログラムで、どれだけ試行しても確率が1/6に収束しようとしなかったらバグがある : デフォルトの名無しさん [sage] 2019/01/30(水) 00:36:43.73:ILSDuF01 よっぽど悔しかったんだな。。。 : デフォルトの名無しさん [] 2019/01/30(水) 07:02:27.20:3/CBrgdG ←バグの意味を知らんプロさんwwww ええでもっと恥ずかしがってもwww : デフォルトの名無しさん [] 2019/01/30(水) 12:54:53.35:X+zaqEGo よろしくお願いします。 あるxlsmファイルを、1ヶ月間だけ使える、という形にしたいです。 つまり、各使用者がそのファイルを自分のPCに置いてから、1ヶ月だけは操作できると いうことなのですが、どのようにしたらよいかわかりません。 ファイルを開いたときに、そのファイルが設置後1ヶ月経っていたら「もう期限切れ」とメッセージを出して 操作を不可能にしてしまうのを考えていたのですが、その設置日というのをどう取得すればいいのか。 「USBメモリなどから、そのファイルがそのPCにコピーされた日」を取得するにはどうすればよいでしょうか? : デフォルトの名無しさん [sage] 2019/01/30(水) 13:21:11.92:TCBbgKI9 「ブックの作成日」でググって出てきた二つ目のサイト ttps://www.moug.net/tech/exvba/0130015.html : デフォルトの名無しさん [sage] 2019/01/30(水) 18:49:20.66:vrvbffTa 鞄 : デフォルトの名無しさん [sage] 2019/01/30(水) 19:54:50.43:E22FaIEN Excel 2016 (64bit) のVBAで質問です とある理由で、大規模桁の計算をしないといけなくなったので 取り急ぎLongLong型の配列を作って必要な演算を作ろうかと そこで、エラーが出て悩んでいる案件と、ちょっとした疑問が とりあえず、代入されるものが数値であるかのチェックは必要よね…と思い IsNumeric関数を使おうかと思うのですが これって、例えば100桁の整数を表す文字列でも通るんでしょうか…って通るみたいなんですが 上限は文字列として扱える上限まで行けるんでしょうか? 計算の都合で商を求める演算「\」を使ったところ、10^12 \ 2^22 あたりの計算でオーバーフローとなりました (実際には、2^22のところはそのオーダーの定数) 「\」の計算は64bitに非対応なのでしょうか? : デフォルトの名無しさん [sage] 2019/01/30(水) 21:02:23.30:E37rjQ75 それこそPowerShell呼んでBigInteger使えよ : デフォルトの名無しさん [sage] 2019/01/30(水) 22:56:12.99:dsQEAAmt 基準日をどうするかにもよるけど、 一番簡単なのは、If 今日の日付 = 2019/2/28 Then Exit Sub 的なやつ。 : デフォルトの名無しさん [sage] 2019/01/30(水) 22:59:06.78:dsQEAAmt あ、コピーされた日か。 じゃあFileSystemObject使うとか。 : デフォルトの名無しさん [sage] 2019/01/31(木) 07:12:05.16:Z5McOm4q コピーされた日なんてどこにも記録されてないんだから取得のしようもないだろ : デフォルトの名無しさん [sage] 2019/01/31(木) 07:50:39.64:tKdk8GYp 起動時にあるセルが空白なら今の日付入れる。 空白でないのなら、セルの内容と今の日付を比べる。 セルは非表示のシートとかでよくね? : デフォルトの名無しさん [sage] 2019/01/31(木) 08:17:14.63:mZzaZtfh 別に作成されているマクロのコンポーネントになるので不採用ですね…。 : デフォルトの名無しさん [sage] 2019/01/31(木) 10:24:09.90:ivIRiWY+ スルーされてるけどに日付取得のソースが丸々載ってますよ 余程変なことをしなければ、コピー日時はファイルの(≠エクセルのプロパティ)の作成日時です 適当なセルをパスワード保護して、ブックモジュールのOpenイベントに空白条件で日付を入れるコードを書けば初回起動で記録されます。 \演算子が良く分からないのですが、除算の結果から小数点以下を消すという意味なら Int(10 ^ 12 / 2 ^ 22) でどうでしょうか : デフォルトの名無しさん [sage] 2019/01/31(木) 12:39:08.81:xxTKFGAk WScript.Shell で呼べばいい VBAのソース内に書いたPowerShell実行できるぞ : デフォルトの名無しさん [sage] 2019/01/31(木) 12:43:51.49:B2lY3/DV 何でそういう面倒くさい方法にしなきゃならんの? VBAじゃどうにもならんという結論か? : デフォルトの名無しさん [sage] 2019/01/31(木) 12:52:33.19:xxTKFGAk VBAでやろうとすれば自前で多倍長整数演算を実装する必要があり、開発とテストで誇張抜きで工数数百倍かかるよ : デフォルトの名無しさん [] 2019/01/31(木) 16:39:19.38:aH0rCOCG >LONGLONG >100桁の整数 あほですか : デフォルトの名無しさん [sage] 2019/01/31(木) 19:07:59.37:B2lY3/DV だからさ、まずお前の結論としてVBAじゃ無理というのがあって、それからだろPowerShell云々は。 で、本当のところ、無理かどうかは分からんが、仮に無理だとしてどうしてPowerShellになるんだ? 別に他でも良いわけだろ。 : デフォルトの名無しさん [sage] 2019/01/31(木) 19:08:45.03:2eoSLZbf >IsNumeric関数を使おうかと思うのですが On Error Resume Next 数字じゃないとエラーが起きるような処理 エラーが起きたら終了みたいな On Error Goto 0 : デフォルトの名無しさん [sage] 2019/01/31(木) 19:28:01.37:ivIRiWY+ >>IsNumeric関数を使おうかと思うのですが、上限は文字列として扱える上限まで行けるんでしょうか? ちょっと質問内容が良く分からないのですが、 ・そもそもLongLong型(64bit=8バイト)の話では無かったのですか?100桁とは? ・ヘルプに有る通り文字列型の上限は2GBですが(以下同様) 仮に2GBの判定が出来たとしても、その膨大な時間を使うよりは例外処理してしまった方が早いと思います。 : デフォルトの名無しさん [sage] 2019/01/31(木) 19:28:54.99:kne0z8/A よくそんな仕事請け負ったな、依頼者に騙されてないか? : デフォルトの名無しさん [sage] 2019/01/31(木) 19:31:09.20:ivIRiWY+ お話を聞いてる限り、恐らく元々の依頼内容も勘違いされている部分があると思うので、 差し支えない範囲で教えて貰えれば根本的な部分に回答が出来るかもしれません。 : デフォルトの名無しさん [sage] 2019/01/31(木) 19:31:49.59:ivIRiWY+ みんな同じ様な事言っててワロタ : デフォルトの名無しさん [sage] 2019/01/31(木) 21:50:14.70:xxTKFGAk 別にPowerShellでなくてもいいけど、標準のWindowsだけで特に追加で何か入れることなく使えて 多倍長演算もサポートしててVBAから簡単に呼べるのなんて他にある? : デフォルトの名無しさん [] 2019/02/01(金) 01:19:40.80:UQQ7ub0a そちらの質問は興味本位です。与えられた数値に見える文字列を信じるなら不要です それと、LongLong型で済むなら配列はいりませんし やりたいことは、例えば「100桁同士の四則演算をする」というようなことです。 コンパイラのインストールをセキュリティポリシーで禁止されているので 困っているのですよ。 そちらは時間があれば勉強してみようかと ただ、それで実装すると引き継ぐときに後の人が大変そうですが : デフォルトの名無しさん [sage] 2019/02/01(金) 02:51:10.44:Jdk/7rOF 100桁ぐらいなら、Ruby でも演算できる : デフォルトの名無しさん [sage] 2019/02/01(金) 03:10:10.30:HKJPuzL8 あまりに馬鹿過ぎて話しにならん どうして馬鹿と言われるか理解できるか? : デフォルトの名無しさん [sage] 2019/02/01(金) 04:03:45.69:bJm3iiDn 初回起動で設定しても元のブックをコピーし直せば何度でも使える 何の条件で期間指定したいのかわからないけど パソコン限定ならレジストリでも使うのかな : デフォルトの名無しさん [sage] 2019/02/01(金) 07:03:41.22:gp0X8o+d 言語の動作もわかっていないこんな奴に依頼するなんて。頼む方も頼む方。 : デフォルトの名無しさん [sage] 2019/02/01(金) 07:18:07.26:76fUr+Yk Excel VBAの質問スレだろ 質問も回答もする気無いならスルー出来んのか? : デフォルトの名無しさん [] 2019/02/01(金) 07:44:04.79:eMw5OSNU 答えられない質問はとりあえず馬鹿にして勢いで乗り切る方針のプロさんw バカwww : デフォルトの名無しさん [sage] 2019/02/01(金) 08:37:10.62:UEAxmDKm ComboBoxで↓を押して表示されるリストの行数は固定でしょうか? 表示行数を増やす方法がありましたら、ご教授ください よろしくお願いします : デフォルトの名無しさん [sage] 2019/02/01(金) 08:51:37.94:76fUr+Yk Excelのレジストリ操作だと簡単なのはそのパソコンのユーザー毎の設定だな 無論APIを使えば何でもできるけどね 所詮はバーチャルマシンも考えればユーザー側も何でもできる その程度と思って使うか ネットにDB持つかだな : デフォルトの名無しさん [sage] 2019/02/01(金) 08:51:40.44:8kRZ6Lw/ 最近はexcel2010とVB.netで改元対応しています。 excelのイベント少ないなって思っているのですが、2016などの新しいのはイベントや関数などは増えているのでしょうか? 2019なんかはタブレット操作用のイベントもあったりするとかでしょうか? : デフォルトの名無しさん [sage] 2019/02/01(金) 09:05:53.38:qPCno0Ra なんかすごいところだな とか上から目線ってかもう天から垂直に見下ろして魔法打ち込んでるレベルだな しかも書き込んでる時間が深夜3:00とか超絶生活者 : デフォルトの名無しさん [sage] 2019/02/01(金) 10:01:49.43:FlvBcwUR 763 名前:デフォルトの名無しさん[sage] 投稿日:2019/02/01(金) 02:51:10.44 ID:Jdk/7rOF 100桁ぐらいなら、Ruby でも演算できる ゲラゲラゲラゲラゲラゲラ : デフォルトの名無しさん [sage] 2019/02/01(金) 10:50:03.45:3Ud/K8J0 計算するライブラリーが有るってことじゃないの Rubyしらんが : デフォルトの名無しさん [sage] 2019/02/01(金) 10:54:24.80:rRNrmt+/ VBAはレガシー扱いだからMSのポリシー的に積極的な機能追加は不可 ちなみにVB.NETのWindowsフォームも既にレガシーで開発終了してる : デフォルトの名無しさん [sage] 2019/02/01(金) 10:55:12.36:3Ud/K8J0 計算できるライブラリーがあるだけじゃないの どんな言語でも、4則演算程度なら作れるだろ : デフォルトの名無しさん [sage] 2019/02/01(金) 10:56:26.07:wTTD69jh VBAだって超多倍長演算ライブラリぐらいネットに転がってんじゃない? ちなLongLongで扱えるのは18桁まで、乗除算でオーバーフローを起こさないようにするなら半分以下の桁で使うのが無難 : デフォルトの名無しさん [sage] 2019/02/01(金) 10:57:36.71:3Ud/K8J0 すまん、ダブって書き込みしても〜た : デフォルトの名無しさん [] 2019/02/01(金) 15:50:46.63:eD54qyaY VBAなんて低級言語を真剣にやってるバカ 言い訳は色々あるんだろうけどそろそろちゃんとしたのを覚える時期だよ : デフォルトの名無しさん [sage] 2019/02/01(金) 16:15:57.80:9mJigrZN 心が病んでるな、かわいそうに。 : デフォルトの名無しさん [sage] 2019/02/01(金) 17:19:33.59:oMFegD+z 低級言語・高級言語の意味すら分かってないのって かわいいな : デフォルトの名無しさん [sage] 2019/02/01(金) 18:56:31.92:dMBA0PwK もしレベル的な意味合いで貶すなら下級または低俗じゃないかな 低級だと金額的な意味合いだからオフィス製品みたいな安い言語使いやがって、という意味か 高い開発言語ってなんだろ : デフォルトの名無しさん [sage] 2019/02/01(金) 19:14:07.93:OpRhgdeW お前の馬鹿頭ではアセンブラは何言語になっているんだ? : デフォルトの名無しさん [sage] 2019/02/01(金) 19:21:01.59:69So7CMb どんな状況で100桁の計算が必要なんだよwwwwww 弾道計算でもするのかよwwwwww どうしても必要だとして、 16777216を、256×256×256で表現するRGBみたいに、 分離して計算できないの? : デフォルトの名無しさん [sage] 2019/02/01(金) 19:48:56.75:oMFegD+z 桁数じゃあなくて精度の問題だろ 何桁精度が必要か 全部なら分けて計算するんだろ 整数限定かよ : デフォルトの名無しさん [sage] 2019/02/01(金) 20:43:56.48:ldeBmXAI Mid関数がString型の限界である20 億文字(桁)まで対応出来るようなので、限界まで判定可能です。 実際に試そうと思ったのですが、1000万桁あたりからエラーは起きないものの処理が終わる気配がありませんでした。 また、311桁目から判定がFalseとなり正常に判定できませんので注意してください。 : デフォルトの名無しさん [] 2019/02/01(金) 21:29:30.54:6BaLLxbK 腹筋イタイwww : デフォルトの名無しさん [sage] 2019/02/01(金) 21:35:52.61:yy1ts1sJ >低級だと金額的な意味合いだから は????????? : デフォルトの名無しさん [] 2019/02/01(金) 23:01:14.33:UXXgl86T 中学生かそれ以下の質問だな : デフォルトの名無しさん [] 2019/02/01(金) 23:02:01.30:UXXgl86T 64kbの壁でぐぐれ : デフォルトの名無しさん [sage] 2019/02/02(土) 02:17:14.50:nzR6xkI9 こんな馬鹿に人月とかで請求されたらブチ切れる 馬鹿だから時間を食うだけだろ : デフォルトの名無しさん [sage] 2019/02/02(土) 03:55:47.52:XBSRuYVd 機械よりか人間よりかで低いか高いか : デフォルトの名無しさん [sage] 2019/02/02(土) 06:09:03.94:jIzNjlQE >743 何桁通るかは別として、IsNumericって例えば"1.2e3"とか"\30"とかでもTrue返すんだけど、それはいいの? : デフォルトの名無しさん [sage] 2019/02/02(土) 09:04:05.51:jIzNjlQE あと"&hDEADBEEF"とか"&o77"とか ついでに全角/半角が混在しててもTrueだし、文字列の前後にスペースタブ改行なんかが入っててもTrueだね : デフォルトの名無しさん [sage] 2019/02/02(土) 11:42:55.97:QW9QiURg declareのシグニチャー間違えたらフリーズするんだけどdllから型情報取れないの????? : デフォルトの名無しさん [sage] 2019/02/02(土) 13:15:40.31:C6ef9W0S 調べりゃ出てくるんだからそんな面倒なことしなくてもよくね? : デフォルトの名無しさん [sage] 2019/02/02(土) 19:22:50.38:VsnxbMPu そんなに桁数使うことあるの? 桁数ならアセンブラなら言語的な制限がないから C++のインラインアセンブラで作ってDLL化しておけばいいんじゃない? ま、あまり桁数が多い場合は外に出しても数字として扱えないだろうから 文字列として扱うしかないけど : デフォルトの名無しさん [sage] 2019/02/02(土) 20:08:24.01:mZCa7M9L アホか CPUがネイティブで扱える桁数は決まっている : デフォルトの名無しさん [sage] 2019/02/02(土) 21:45:51.31:l+0aiRcv 8bitCPUがネイティブで扱える電卓は決まっている : デフォルトの名無しさん [sage] 2019/02/02(土) 22:18:38.36:Ep74GMaU 昔々、256桁の四則演算ルーチン組んだことある。アセンブラで。 今なら VBAでも同じくらいの速度で動くんだろうな… : デフォルトの名無しさん [sage] 2019/02/02(土) 22:40:50.50:nzR6xkI9 このスレで質問する薄ら馬鹿に匹敵する馬鹿ばっか Python3使えよというまともな提案が未だなし : デフォルトの名無しさん [sage] 2019/02/02(土) 22:57:11.62:IQGxMEya 801<カマッテー、カマッテー、ボクチャンヲ カマッテー : デフォルトの名無しさん [sage] 2019/02/02(土) 23:30:42.83:32vETS5N シート1をアクティブにしてWEBクエリで取り込んだあとReplaceで置換したいのですが うまくいきません。なぜかF8でステップ実行したらできるのですが、普通に実行すると置換されません。 何がいけないんでしょうか。 : デフォルトの名無しさん [sage] 2019/02/03(日) 00:12:07.90:1X9tFGjy アホか桁繰り上げ繰り下げのフラグを知らんのか? むかーしのZ80や6502だってメモリの許す限り 際限なく計算出来るわ : デフォルトの名無しさん [sage] 2019/02/03(日) 00:35:40.02:1X9tFGjy そもそもそう言った計算方法を 知らなかったとしても 8bitや16bitしか演算に扱えなかった時代に テレビゲームとかで255や65535を超える スコアが表示されていたことを思い出せば 普通は人をアホ呼ばわりすることを 書き込む前に気付きそうなもんだけどな : デフォルトの名無しさん [sage] 2019/02/03(日) 06:14:34.05:eVzJd4zP そういう処理をアセンブラでしかできないと思ってるからアホだって言われるんだよ : デフォルトの名無しさん [sage] 2019/02/03(日) 06:43:05.61:Q6V8DKqV 多少非効率になるけどたいていの言語で多倍長演算はできる なので > 桁数ならアセンブラなら言語的な制限がないから とか意味わからん、って話だろ : デフォルトの名無しさん [sage] 2019/02/03(日) 06:57:12.02:1X9tFGjy いやはあからさまに 「CPUがネイティブで扱える桁数は決まっている」からって言ってるんだが? それに俺は実現方法の一例を挙げただけだと思うが「アセンブラでしか出来ない」なんて どこに書いてあるんだ? もっとも、桁数制限のない計算を もっと効率よくVBAで使用する方法が あるのであればそれはそれで聞いてみたいけど : デフォルトの名無しさん [sage] 2019/02/03(日) 07:06:03.78:1X9tFGjy 効率を考えなければ別にC++の時点で出来るんだよ なんでC++からインラインアセンブラを 使用するような話をしていると思う? : デフォルトの名無しさん [sage] 2019/02/03(日) 07:34:17.85:Q6V8DKqV を見てからレスしなよ… : デフォルトの名無しさん [sage] 2019/02/03(日) 08:52:19.94:kk/DtOkp まあ、単位が100点だと、後ろの00は飾りだと思うけどな。 : デフォルトの名無しさん [sage] 2019/02/03(日) 09:10:44.36:eVzJd4zP なに効率とか後付けしてんだアホ あと「コンパイラのインストールをセキュリティポリシーで禁止されている」って書いてあるのを読めてないのもアホ : デフォルトの名無しさん [] 2019/02/03(日) 09:36:56.46:C7VVL/VH ゼビウス1000万点超えは9999990で表示が止まるがゲーム続行 : デフォルトの名無しさん [sage] 2019/02/03(日) 09:40:40.04:J1QLe6/n 足し算ならExcelでも実用レベルで作れるわ : デフォルトの名無しさん [sage] 2019/02/03(日) 10:00:11.19:tEc8TngX > あと「コンパイラのインストールをセキュリティポリシーで禁止されている」って書いてあるのを読めてないのもアホ 今時C#とかVB.NETのコンパイラなんてインストールいらんぞ 情弱なのかXPでドヤってるのかは知らんけどw : デフォルトの名無しさん [sage] 2019/02/03(日) 10:19:47.32:vrXjtSxX 今のWindowsはインストールしなくてもC#コンパイラが最初から入ってる : デフォルトの名無しさん [sage] 2019/02/03(日) 10:39:36.74:eVzJd4zP 誰がC#とかVBの話してんだよアホども : デフォルトの名無しさん [sage] 2019/02/03(日) 11:12:27.82:tEc8TngX コンパイラの話な 恥ずかしいからもう出てくんなw : デフォルトの名無しさん [] 2019/02/03(日) 11:42:00.66:o6ig8vkN ←恥を知らないプロさんwww : デフォルトの名無しさん [sage] 2019/02/03(日) 12:05:01.97:Q6V8DKqV ダサw : デフォルトの名無しさん [sage] 2019/02/03(日) 15:02:23.40:kTgfWuu8 日本語に不自由か真性のバカ発見 : デフォルトの名無しさん [sage] 2019/02/03(日) 15:51:29.62:xJhhUajw html?のようなパラメーターのあるURLから ActiveSheet.QueryTables.Add を使って WEBクエリで取り込むにはどうすればいいでしょうか? 一部変数を使うのですが文字列を結合するやり方ではうまくいきません。 : デフォルトの名無しさん [sage] 2019/02/03(日) 16:02:39.05:vrXjtSxX 認証やクッキーが必要か、URLが間違ってるか、エンコードが必要か、原因は色々考えられる : デフォルトの名無しさん [] 2019/02/03(日) 22:56:23.72:xJhhUajw エンコードが原因みたいです。 &や=は使えないのですね。 返信ありがとうございました。 : デフォルトの名無しさん [] 2019/02/03(日) 23:53:48.67:OgrV47La 以下のアプリを作って欲しい 画面上でオンスクリーンかなんでもいいので、文字が瞬間的に現れて消えるアプリ。 1つのばりばらに並んだ文字につき!約1秒から0.05秒の間で調節できるようにしたい。 文字のデータベースは、同ブック内の別シートにて管理するものとする。 : デフォルトの名無しさん [sage] 2019/02/03(日) 23:59:07.80:I0mCFuyH 死ね : デフォルトの名無しさん [] 2019/02/04(月) 03:07:11.70:ZoDPv0KA ExcelとかVBAじゃなくていいなら作るけど : デフォルトの名無しさん [sage] 2019/02/04(月) 06:46:04.48:d8a/a/xM 作るのは他の要件が有るだろうから他の人に Excelのシートから枠線を消して全画面表示 ランダムに出す文字はワードアートを挿入したり 消すだけでいいだろ : デフォルトの名無しさん [sage] 2019/02/04(月) 07:25:45.63:d8a/a/xM >&や=は使えないのですね。 エンコードでは使えるだろ、デコードはデコードする 文字の法則があるけど ちなみに、エンコードやデコードは必要なの? : デフォルトの名無しさん [sage] 2019/02/04(月) 07:29:54.23:d8a/a/xM このスレもワッチョイ入れたら? : デフォルトの名無しさん [] 2019/02/04(月) 08:04:31.54:q/1gUcq+ じゃあ、Androidアプリでいいから、つくってフリーでGoogleストアにだせる? : デフォルトの名無しさん [sage] 2019/02/04(月) 08:24:31.69:zwEJkqhi ルパン三世? : デフォルトの名無しさん [sage] 2019/02/04(月) 09:55:11.03:fGXzCPh9 Androidアプリ関係ないだろ VB C#なんかでCVS形式などでパラメーターで受けて表示するプログラムなら簡単に作れるってことだろ : デフォルトの名無しさん [sage] 2019/02/04(月) 10:53:03.12:Kbv/gmVc フラッシュ暗算みたいなやつか? : デフォルトの名無しさん [] 2019/02/04(月) 12:14:30.52:q/1gUcq+ イエス。言語を選ばないとやっぱり難しい? : デフォルトの名無しさん [sage] 2019/02/04(月) 12:40:18.01:OuHrukdw 別にVBAでも簡単だと思うけど作成依頼だったら費用が発生するのが普通だと思うんだが。 0.05秒ってのがどうかだね。 : デフォルトの名無しさん [] 2019/02/04(月) 12:58:23.32:+5141PVg 費用が発生しとる作成依頼なんか見たことないわw 何を言っとるんやこのバカw : デフォルトの名無しさん [sage] 2019/02/04(月) 13:05:48.06:aEyGOWy8 死ねよ : デフォルトの名無しさん [sage] 2019/02/04(月) 14:32:52.57:d8a/a/xM 別に難しくない 0.05秒を気にしている人もいるが、正確な時間を取得することは出来る ワードアートの作成・削除の時間を気にしているなら、表示・非表示の切り替えで 対応すればよいだけ 全画面表示・タイトルバー・スクロールバー・シートタブの非表示 ボーダーも0に設定すれば良いだけ : デフォルトの名無しさん [sage] 2019/02/04(月) 14:47:47.78:Mgc+6WQD 取得できても(人間の反応速度と比較して無視できる程度の誤差で)正確に表示するのはExcelでは厳しいでしょ ちらつきまくるよ : デフォルトの名無しさん [sage] 2019/02/04(月) 15:08:11.96:d8a/a/xM まあ、出来ない人間には出来ないだけ、書き込む必要もないのに やり方なんていくらでもある : デフォルトの名無しさん [sage] 2019/02/04(月) 17:01:02.28:fGXzCPh9 細かいこといわなければパワポでVBAで十分だろ : デフォルトの名無しさん [sage] 2019/02/04(月) 18:26:41.76:OuHrukdw やってから言ってんの? 俺はまだ、やってないから気にしただけなんだが。 ちなみに、俺はVBAのUserFormもシートも使うつもりは無い。 スピードも速いとは思うが、何ぶん計測したことは無いからね。 : デフォルトの名無しさん [sage] 2019/02/04(月) 18:38:32.34:OuHrukdw 自分は何もせずに依頼すれば出てくるというのは虫が良いだろという意味なんだが。 : デフォルトの名無しさん [sage] 2019/02/04(月) 18:51:55.31:VG0XR/Gw でも結局誰も作ってなくて草 : デフォルトの名無しさん [sage] 2019/02/04(月) 18:53:45.79:fefAq5Di まあ 出来の悪い奴は文句も多いからな : デフォルトの名無しさん [sage] 2019/02/04(月) 19:28:29.36:iZ37iel0 CSS アニメで作れば? : デフォルトの名無しさん [] 2019/02/04(月) 19:59:53.09:q/1gUcq+ 1に作成依頼受け付けますと書いてあったから期待して依頼したが、馬鹿を見たよ : デフォルトの名無しさん [sage] 2019/02/04(月) 20:02:20.97:aEyGOWy8 じゃあ、 「ExcelのVBAに関する質問スレです」も守れや。死ねよ。 : デフォルトの名無しさん [] 2019/02/04(月) 20:08:32.00:5NG821Xc 分かったよ 受けるよ : デフォルトの名無しさん [sage] 2019/02/04(月) 20:19:41.54:R+dJYoTm vbaやってるサラリーって何故かマッチョ多くね? : デフォルトの名無しさん [sage] 2019/02/04(月) 20:54:17.47:VG0XR/Gw ttp://https://www.axfc.net/u/3957636 初学者が作ってやったぞwほらよw まぁもっと良いのが作ってくれるやろw : デフォルトの名無しさん [sage] 2019/02/04(月) 22:43:34.77:lmibofpe エディタは別のを使わずに備え付けのものを使いますか? : デフォルトの名無しさん [sage] 2019/02/04(月) 22:52:12.63:WAN0VVnl 高速でシートを切り替えるとか、 ふざけるのかと思ったら、結構真面目に作っててワロタ。 : デフォルトの名無しさん [sage] 2019/02/05(火) 08:19:52.51:8bHFC9p3 後で見てみるけど、仕様になかったインターバルの時間とか可変で設定できる? : デフォルトの名無しさん [sage] 2019/02/05(火) 08:25:47.35:Bt9udYT0 フラッシュ暗算て何? てっきりルパン三世だと思ったんだが : デフォルトの名無しさん [sage] 2019/02/05(火) 09:46:15.11:seWX9f2k 画面に数字が次々に出て暗算で合計を求めるやつ ttp://https://www.youtube.com/watch?v=wTkVZne-i2g : デフォルトの名無しさん [sage] 2019/02/05(火) 10:20:39.56:Kjw5jSR6 まあ、これが評価できる最低限の仕様だな : デフォルトの名無しさん [sage] 2019/02/05(火) 10:22:40.38:Kjw5jSR6 ちゃんとしたのを、が作ってくれるやろ ことを期待しよう : 828 [sage] 2019/02/05(火) 11:08:12.53:Kjw5jSR6 デフォルトの名無しさん2019/02/04(月) 06:46:04.48ID:d8a/a/xM > 作るのは他の要件が有るだろうから他の人に > Excelのシートから枠線を消して全画面表示 > ランダムに出す文字はワードアートを挿入したり > 消すだけでいいだろ 最低限でもこの程度のことやれよっと、ワードアートの動作速度が問題なら全て作成してから 表示非表示を切り替えるだけだよっと : デフォルトの名無しさん [sage] 2019/02/05(火) 11:15:39.50:seWX9f2k ↑これで骨組みは十分だろ : デフォルトの名無しさん [sage] 2019/02/05(火) 11:22:46.31:Kjw5jSR6 こんなの客に提示するとすぐ帰っていくよ イメージが違い過ぎる : デフォルトの名無しさん [sage] 2019/02/05(火) 11:25:28.34:Kjw5jSR6 行間を読めない奴はいつまでたってもろくなもの作れないんだよ おれは、年取ったから行間いっぱいある奴は遠慮するけどな : デフォルトの名無しさん [sage] 2019/02/05(火) 11:53:42.93:Kjw5jSR6 ちゃんとしたのを、が作ってくれるやろ ことを期待しよう。 : デフォルトの名無しさん [] 2019/02/05(火) 12:15:44.59:jg7BNmXb なんやバカ必死やなw : デフォルトの名無しさん [sage] 2019/02/05(火) 12:19:32.33:8bHFC9p3 面白いな何で草はえるの : デフォルトの名無しさん [sage] 2019/02/05(火) 12:32:36.37:Kjw5jSR6 ちみぐらいバカをからかうのって私の趣味ではありません あわれ過ぎるから : デフォルトの名無しさん [] 2019/02/05(火) 12:53:49.77:jg7BNmXb 加速するバカw : 852 [sage] 2019/02/05(火) 12:54:18.46:uJYvVabq との要素を気持ち取り入れてみたよ あとはもうシラネ ttp://https://www.axfc.net/u/3957750 : 852 [sage] 2019/02/05(火) 13:02:38.95:uJYvVabq 間違えた。こっちで ttp://https://www.axfc.net/u/3957753 : デフォルトの名無しさん [sage] 2019/02/05(火) 13:05:08.57:Kjw5jSR6 知らねえと言われても ファイルが見つかりません 既にファイルが削除されたか、期限切れになったか、ダウンロード上限数に達した、若しくは誤ったURLが指定されています。 再度ご確認下さいますようお願い致します。 : デフォルトの名無しさん [sage] 2019/02/05(火) 15:50:53.68:Kjw5jSR6 今さっき起きた。 ソースを1分程度見たけど、毛が1本生えただけだろ オリジナル性もない、引かれている部分もありで 評価はマイナスだな、マクロを動かす気にもならん : デフォルトの名無しさん [sage] 2019/02/05(火) 16:03:55.64:Kjw5jSR6 ホントなんだよ、この映像少なくとも全画面表示で 他の表示はテスト中いらないは 結果は、答え合わせでちゃんと出るようにな 問題作成だって、何の機能もないって考えてないだろ 指定した桁数で数字を作成しろよ・・・こんなの仕様の内の一寸な : デフォルトの名無しさん [sage] 2019/02/05(火) 16:18:43.72:Kjw5jSR6 テストしないのは申し訳ないと思ってもう一度20秒ぐらい見た あまりにごみで、テストしてない : デフォルトの名無しさん [] 2019/02/05(火) 20:09:31.48:2313QgIt 必死すぎてアンタッチャブルのバカw : デフォルトの名無しさん [sage] 2019/02/05(火) 20:30:50.84:seWX9f2k 金もらえるならきちんと作るだろうけど金出さないんでしょ? : デフォルトの名無しさん [sage] 2019/02/05(火) 21:01:45.45:WLSIITfa きちっとって このレベルを100倍してもくずはくずだな : デフォルトの名無しさん [sage] 2019/02/05(火) 21:13:23.45:seWX9f2k ただでもらったものにケチつけるって人間としてクズだな : デフォルトの名無しさん [sage] 2019/02/05(火) 21:45:13.17:84y7DIGj なんかつらいことがあったんでしょ そっとしといてあげなさい : 852 [sage] 2019/02/05(火) 23:50:58.70:uJYvVabq ユーザーフォームに変えてみた あと少し機能を足してみた ttp://https://www.axfc.net/u/3957855 : デフォルトの名無しさん [sage] 2019/02/06(水) 00:44:18.42:ZnA/X3oO A B 1 あ 2 い 1 か 2 き 3 く 1 さ 1 た 2 ち となっているデータを、連番でまとめて あい かきく さ たち とするにはどうすればいいですか? : デフォルトの名無しさん [sage] 2019/02/06(水) 01:00:17.91:Piy/PJ2X 死ねばいいよ : デフォルトの名無しさん [sage] 2019/02/06(水) 05:43:02.95:DSThmZXP 死ねばいいよ : デフォルトの名無しさん [sage] 2019/02/06(水) 10:06:21.68:pkuTd0pW 関数で直接は難しいけどVBAでやるなら簡単だろ ただそれもわからない人間に提示しても無駄だな : デフォルトの名無しさん [sage] 2019/02/06(水) 10:48:09.84:pkuTd0pW マクロを実行してみた、君は自分で考えてるんで良いと思う 1.出力する問題は固定ではなく文字とか長い数字もいらない 桁数(上限・下限)を指定してランダムに数値を発生すること フラッシュ暗算を考えると余分な機能はいらない 2.バックを全画面表示にすること もちろん、画面の中央に表示する、画面の大きさから割合で文字の大きさを指定する 3.タイミングをmsで指定指定しているが ディスプレーって最大解像度ではリフレッシュレート60hz(16.6msおき)程度なんだよ ディスプレーの反応速度も早くて5msかかる、10ms単位で十分だが、好みはある 4.答えの表示がチェックだが 要するに終わった後、計算が合ってるかを確認するんだから 終了後に特定のキーを押したら答えを出すでいいだろ ざっくり、大きく気になった点だけ、やり方は分からなければ聞け : デフォルトの名無しさん [sage] 2019/02/06(水) 10:57:13.19:pkuTd0pW 全画面表示は数字表示部をユーザーフォーム(全画面)で表示文字をVBAで切り替えたほうが簡単だな : デフォルトの名無しさん [sage] 2019/02/06(水) 11:03:53.28:inxqkSwn 上司気取りの人が上から目線でダメだしし出したけどこの人どんだけ偉いの? まさか感謝でもしてもらえるとか妄想してんのかな : デフォルトの名無しさん [sage] 2019/02/06(水) 11:26:06.43:pkuTd0pW で、君にはどんなダメ出しが欲しいんだ? : デフォルトの名無しさん [sage] 2019/02/06(水) 11:34:27.39:pkuTd0pW まあ、自分で作って「フラッシュ暗算」で面白いものを作ってみろよ 自分で満足できないものは、他人は評価しないよ : デフォルトの名無しさん [] 2019/02/06(水) 12:26:19.63:FGND1cQA おいwこのバカ必死すぎてダメ出しとかしだしたでw : デフォルトの名無しさん [] 2019/02/06(水) 12:43:34.25:eyuAOAwV Dim i As Long i = 1 Do While Range("A1").End(xlDown).Row > i Cells(Cells(i, 1), 3) = Cells(Cells(i, 1), 3) + Cells(i, 2) i = i + 1 Loop 答えやアドバイスをしないでマウントしてくるやつは結局何も出来ないやつと同じなので放置で。 : デフォルトの名無しさん [] 2019/02/06(水) 12:45:00.03:eyuAOAwV あ、質問の意味まちがえてたw : デフォルトの名無しさん [sage] 2019/02/06(水) 12:50:23.01:oteDmMe3 だよね ひらがなのあ行か行…で括るっぽいし 2行目の2と4行目の2が紐づく1が違うから考えれば出来そうだけど面倒そう : デフォルトの名無しさん [sage] 2019/02/06(水) 12:56:44.95:pkuTd0pW え、どんだけ : デフォルトの名無しさん [sage] 2019/02/06(水) 12:58:37.07:pkuTd0pW バカって、すぐ熱くなるよな、面白いけど : デフォルトの名無しさん [] 2019/02/06(水) 13:07:21.25:eyuAOAwV これでどうや!w Dim i, j, k As Long i = 1: j = 1: k = 1 'i=データの行 j=書き込みセルの行 k=数列のカウント用 Do While Range("A1").End(xlDown).Row >= i Cells(j, 3) = Cells(j, 3) + Cells(i, 2) If Cells(i + 1, 1) <> k + 1 Then j = j + 1: k = 0 i = i + 1 k = k + 1 Loop : デフォルトの名無しさん [sage] 2019/02/06(水) 13:15:51.19:pkuTd0pW >これでどうや!w 何に対して言ってるのかな?。なんだろう?こんなの提示して? よくわからんな : デフォルトの名無しさん [] 2019/02/06(水) 13:22:01.82:eyuAOAwV ばっかだなぁ、881に対していってんだろw つかお前マウントとることしかしないASDのザコという認識だから何も求めてない。レスいらない。 するならちゃんと自分で作ったものを提示してからだ。できたらあやまる。 : デフォルトの名無しさん [sage] 2019/02/06(水) 13:25:32.81:pkuTd0pW 例えば 「Do While Range("A1").End(xlDown).Row >= i 」 こんなの"A1"と変数jとiが同期できていないことでプログラムじゃないよ : デフォルトの名無しさん [sage] 2019/02/06(水) 13:27:12.93:pkuTd0pW うふ〜面白いな : デフォルトの名無しさん [sage] 2019/02/06(水) 13:30:48.46:pkuTd0pW からかうしかないけど、って何か意味あるんか? バカって面白いな : デフォルトの名無しさん [sage] 2019/02/06(水) 13:34:49.77:pkuTd0pW 頭悪いのに大変だな : デフォルトの名無しさん [] 2019/02/06(水) 13:37:03.76:eyuAOAwV いや、そうじゃなくってよ。 俺はプロじゃないから変なことしてるかもしれない。いやあるだろう。 そいでお前は凄いのかもしれないけど結局何も作ってないわけだろ? それって何も出来ないのと同じなんだから偉そうにするなって言いたいの。 お前さ、俺の言っている意味解ってる? : デフォルトの名無しさん [sage] 2019/02/06(水) 13:41:27.75:pkuTd0pW 無能が無能に教える意味あるか、無能が威張る意味あるか? 役に立つってなんだよ? お前の満足は何だよ、作ったってことか? : デフォルトの名無しさん [] 2019/02/06(水) 13:43:57.13:eyuAOAwV ん?お前無能なの?無能なのに威張ってるの?ダメじゃん。 役に立つって何?満足って何ってどういう意味? 俺はそんなこと書いてないけどそれはどこから出てきたんだ? お前ののーみそか? : デフォルトの名無しさん [sage] 2019/02/06(水) 13:44:16.40:pkuTd0pW おれがこのスレで作っても意味ないからな質問スレだ答えるだけ : デフォルトの名無しさん [] 2019/02/06(水) 13:53:46.56:eyuAOAwV ああ、そういうことか。 質問には答えるけど代りにお前が作ることはないって意味でいいのか? それがお前のポリシーなら俺はお前に口はさまないよ。 偉そうにされて終わるだけみたいだからお前には質問もしたくないけどな。 質問してるやつはいろいろ試して困ってるんだろ? 俺は動くもの見せて、あとは自分で工夫するなりなんなりした方が良いと思ってる。 だって、具体的なほうが解りやすいじゃん。 それに対してお前がどうこう言うことはないだろ?俺はお前に何も聞いてないんだから。 : デフォルトの名無しさん [sage] 2019/02/06(水) 13:57:29.30:pkuTd0pW まあ、補足すると具体的なものを使えるのは少し考えたやつ 考えない奴は応用できない、だから答えではなくヒントなんだがな : デフォルトの名無しさん [] 2019/02/06(水) 14:10:39.95:eyuAOAwV うーん、辞書がわりに次々聞かれても結局俺が作ってるかいー! みたいになりそうで確かに嫌だな。 ただお前凄そうなんだからそんくらいしてやってもバチあたらんべ。 あ、そこらへんは俺が口はさむことじゃないな、すまん。でももったいないわーほんまに。 俺は基本は自分で調べるから聞くことってほとんどないけど 本当に困っててもまともな返答来なさそうでここで聞けないからさらに困ることあるもん。 お前に言ってるわけじゃないけどライトユーザーからしたら雰囲気怖いよここ。 : デフォルトの名無しさん [sage] 2019/02/06(水) 14:12:54.78:pkuTd0pW お前、ちゃんと満足いくもの作ってみろ やめるのは簡単だまんぞくできるレベルもお前しだい おれは、ダメ出しはしてやるよ、ダメな点は数多いがプライオリティは下がっている : デフォルトの名無しさん [sage] 2019/02/06(水) 14:32:47.81:sQxfU38+ >おれがこのスレで作っても意味ない はも同様だな : デフォルトの名無しさん [sage] 2019/02/06(水) 14:35:44.06:pkuTd0pW 別にそれでいいが♡♡♡ : デフォルトの名無しさん [sage] 2019/02/06(水) 14:38:23.25:sQxfU38+ 次の質問どうぞ : デフォルトの名無しさん [sage] 2019/02/06(水) 14:45:26.84:Piy/PJ2X 頭が悪いのが丸わかりな次の質問どうぞ : デフォルトの名無しさん [sage] 2019/02/06(水) 14:48:20.14:54X0jJM7 マウントしたがりのバカしか居ないスレですけど、それでもよかったら質問をどうぞ : デフォルトの名無しさん [sage] 2019/02/06(水) 23:06:50.96:pkC1NeiE パラパラ漫画作って、動画に撮って再生すればいいんじゃね? : 852 [sage] 2019/02/06(水) 23:08:35.09:gXPhlUR0 作ってるうちに楽しくなってつい作りこんでしまいました ttp://https://www.axfc.net/u/3958012 変更点 ・ランダム表示 ・乱数生成 ・(ほぼ)フルスクリーンモード(1920x1080、1600x900、1280x720、800x600の4種類の画面に対応) ・ユーザーインターフェースの強化 ・デバッグを少々 最初に作ってほしいといっていた人の要望にかなってるかが心配 : デフォルトの名無しさん [sage] 2019/02/06(水) 23:27:15.81:pkC1NeiE フルスクリーンならDirectXだろ、と思ったら、 Windows10だと色々面倒なのな。 : 852 [sage] 2019/02/06(水) 23:33:49.56:gXPhlUR0 いえ、知識がないだけです : デフォルトの名無しさん [sage] 2019/02/07(木) 00:04:38.13:o0PdMVgb Excelの起動画面、ドラクエでエンカウントしたみたいな感じにできないかな。 緑画面に白文字でExcelって、ちょっと地味じゃない? : デフォルトの名無しさん [sage] 2019/02/07(木) 00:55:54.67:XTuXysWv ID:pkuTd0pWだけど やっぱり午前中はましだが午後は酒がだいぶ効いて すまんな まあ文字結合のお題はExcelの問題をコピペしたものだろう これ関数とExcelの機能を使って解いた方が面白い : デフォルトの名無しさん [sage] 2019/02/07(木) 01:10:49.40:XTuXysWv 中身を見ていないが ディスプレイの解像度を取得する(API) ttp://https://www.moug.net/tech/acvba/0020006.html : デフォルトの名無しさん [sage] 2019/02/07(木) 01:15:55.77:XTuXysWv cを作業列にして 結果をピボットテーブルを使って表示 : デフォルトの名無しさん [sage] 2019/02/07(木) 06:41:43.06:C6bM/gU/ 質問です 同じブック、同じシート上にある 任意の二つのセル間を セルで直線を引きたいと思っています 例えばA1セルとD4セルを指定したら A1、B2、C3、D4のセルが黒く着色されるような そんな感じです どのようなロジックを組めば宜しいでしょうか? : デフォルトの名無しさん [sage] 2019/02/07(木) 07:17:58.06:sLOxqlfO まず動作仕様を決める 1,指定の仕方をどうするか クリック Or 別セルで指定 2,複数回線を引くのか 取り消しは同じ指定で取り消すのか 3,クロスしたセルの色は 4,線の色はどの様に指定するのか 5,全てクリアーする処理は必要か? : デフォルトの名無しさん [sage] 2019/02/07(木) 07:27:46.12:sLOxqlfO セルの色の指定方法は、マクロの記録でセルの色を変えて、マクロの記録の終了で確認してください : デフォルトの名無しさん [sage] 2019/02/07(木) 08:42:01.81:94HRw/Ac 何に使うのかが謎だ。 絵でも描くのかな? : デフォルトの名無しさん [sage] 2019/02/07(木) 08:46:47.16:C6bM/gU/ 返答ありがとうございます 特にトリガーは定めていませんし 複数回引くことも考慮しなくていいです こちらとしては 「二つのセル間にセルで線を引くこと」の 実際にどのセルが着色対象となるのかが 求められるロジックが必要となっています ありがとうございます ただ、上記しました通り 着色自体が焦点ではなく どのセルが着色対象となるのかを 求めることができればなぁと考えています : デフォルトの名無しさん [sage] 2019/02/07(木) 09:04:22.19:sLOxqlfO セルの位置情報から列の差が大きいか行の差が大きいかでループする側を決定します ループする側は1増えるいく その数に小さい側を大きい側で割って少数側を四捨五入したものが小さい側の増分でいいでしょう : デフォルトの名無しさん [sage] 2019/02/07(木) 09:09:14.04:sLOxqlfO 追記 ループ変数は0から差分まで 列ぎょうとも 初期値に増分を足していく : デフォルトの名無しさん [sage] 2019/02/07(木) 09:45:06.58:aUTfkvT8 列幅、行幅ともにまちまちだと考えるとマジメに座表計算がいりそうだ : デフォルトの名無しさん [sage] 2019/02/07(木) 10:25:13.14:nA5U51xW セル単位での指定だから、幅は関係ない : デフォルトの名無しさん [sage] 2019/02/07(木) 10:30:41.24:nA5U51xW すまん、関係あるなそれをかんがえると確かに難しいが 実質的にその構造で線を引く意味あるのかな? : デフォルトの名無しさん [sage] 2019/02/07(木) 11:11:43.55:nA5U51xW この感覚だと、遠いな : デフォルトの名無しさん [sage] 2019/02/07(木) 11:16:37.25:nA5U51xW 所詮線はシェイプで引けばいいだけだからな セルの色を変えることにどんな意味があるかが問題 : デフォルトの名無しさん [sage] 2019/02/07(木) 11:38:14.89:aUTfkvT8 セルにシェイプが掛かっているかはすぐ判定できるんだっけ? できるならまあ簡単かな : デフォルトの名無しさん [sage] 2019/02/07(木) 11:59:06.94:nA5U51xW セルの色を変える仕様が実質的に意味あるかが疑問なだけ 意味ないもの検討する必要ないからな : デフォルトの名無しさん [sage] 2019/02/07(木) 12:08:17.49:nA5U51xW まあ、意味あることならいくらでも方法がある(各行列のプロパティから幅なんて取れるからな)けど お題が意味ないこと検討する必要もない : デフォルトの名無しさん [sage] 2019/02/07(木) 13:37:49.53:JiT+m3d9 数学的な問題でVBA関係ないんじゃね : デフォルトの名無しさん [sage] 2019/02/07(木) 14:00:56.39:C6bM/gU/ 皆さんありがとうございます セルで線を引く質問をした者です セル幅がまちまちのケースは こちらも想定外でした 均等幅で求められれば良いと 考えていましたから 既に回答して頂いた方法で 試してみたいと思います どうもありがとうございました : デフォルトの名無しさん [] 2019/02/07(木) 16:33:46.50:IUpQT5qY 質問です 文字列のカラムと数値のカラムが混在する表 数値カラムは空欄セルもある この表からセル値をコピーするとき、数値カラムでセルが空欄の時はコピー先を0にしたい 文字列カラムでセルが空欄の時はコピー先も空欄 タイトル名で判定するのはスマートじゃないと思って セルや変数の仕様を使って上手くできないでしょうか : デフォルトの名無しさん [sage] 2019/02/07(木) 17:12:43.16:suQqSSWO セルの書式を1つずつチェックするのが確実 : デフォルトの名無しさん [sage] 2019/02/07(木) 17:18:57.62:nA5U51xW これはVBAの質問ですか? 機能はExcelの質問だよ : デフォルトの名無しさん [sage] 2019/02/07(木) 22:22:10.23:kH7/pekJ 数値カラムの空欄はそのまま空欄で 文字カラムの空欄を長さ0の文字列にしておけばセル参照で : デフォルトの名無しさん [sage] 2019/02/07(木) 23:16:40.13:o0PdMVgb 1が出てくる回数をそのまま行番号に使って、 1・2・3という数字を、そのまま列番号に使う。 : デフォルトの名無しさん [sage] 2019/02/07(木) 23:30:09.71:nA5U51xW それを式で表記すると? : デフォルトの名無しさん [sage] 2019/02/08(金) 00:39:13.26:nir6IlOg 質問です C言語のFILEポインタをexternしているdllをvbaから呼び出すときにシグニチャーは何型ですか : デフォルトの名無しさん [sage] 2019/02/08(金) 00:50:45.35:WrxcLohJ ごめん、勘違いしてた。 何とかできたけど、ものすごくダサい。 C列 =COUNTIF(INDIRECT("A1:A"&ROW()),A:A) D列 =MATCH(ROW(),C:C,0) E列 =LEFT(F:F&G:G&H:H&I:I&J:J&K:K,FIND("0",F:F&G:G&H:H&I:I&J:J&K:K)-1) F列 =INDEX($1:$1048576,INDIRECT("D"&ROW())+COLUMN()-6,2) G列以降 =IF(INDEX($1:$1048576,INDIRECT("D"&ROW())+COLUMN()-7,1)<=INDEX($1:$1048576,INDIRECT("D"&ROW())+COLUMN()-6,1),INDEX($1:$1048576,INDIRECT("D"&ROW())+COLUMN()-6,2),0) E列が答えだけど、2016なら、ここはCONCATENATEで。 : デフォルトの名無しさん [sage] 2019/02/08(金) 01:05:57.02:WrxcLohJ ↑ごめん、これもなんかおかしいわ。 : デフォルトの名無しさん [] 2019/02/08(金) 04:25:07.76:49YgIYkI よろしくお願いします。 ある住所リストを宛名印刷するためのVBAを書きました。 印刷したときに、枠に収らないとまずいし、とはいえ町名の途中などで機械的に次の 行になるのもまずいので、途中、全角スペースがあったら次の行にする、という ことを考えて、名簿リストを入力する係の人に「だいたい○文字目くらいで、市町村名あたりの キリのいいところで全角スペースを入れておいてください」と頼んでおきました。 Jusho = sheets("名簿").cells.(rowcnt,2) If InStr(Jusho, " ") Then tmp = Split(Jusho, " ") Jusho1 = tmp(0) Jusho2 = tmp(1) Else Jusho1 = Jusho0 Jusho2 = " " End If sheets("印刷元").range("A1")=Jusho1 sheets("印刷元").range("A2")=Jusho2 sheets("印刷元").printout こうやって、長い住所を2行に分けることに成功したのですが、 今になって、マンション名やらなんやらで、全角スペースがいくつもある場合があることがわかりました。 つまり、Jusho0に、2つ以上のスペースがある場合が出てきて、そうすると、tmp(2)やtmp(3)が 発生することなってしまい、印刷の住所が途切れてしまうことになりました。 私のVBAの書き方が悪かったのだと思います。 「1つ目のスペースで2つに分ける。2つ目以降のスペースは無視」というVBAを書きたいです。 どうすればよいでしょうか? : デフォルトの名無しさん [sage] 2019/02/08(金) 05:17:51.52:0dQnaPPd Ruby で作った require 'csv' results = [ ] # 空白区切りで、ヘッダー有り options = { :headers => true, col_sep: " " } # CSV 入力ファイルを、1行ずつ処理する CSV.foreach( "input.csv", options ) do | row | if row[ 0 ] == "1" results.push row[ 1 ] # 要素の追加 else results[ -1 ] += row[ 1 ] # 最終要素に文字列を連結 end end puts results : デフォルトの名無しさん [sage] 2019/02/08(金) 05:23:12.23:imEPOnT1 tmp = Split(Jusho, " ", 2) : デフォルトの名無しさん [] 2019/02/08(金) 06:20:13.15:Ec5y9MTZ Instrは検索文字が文字列の左から何文字目にあるかを返すよ Instr(“東京都 渋谷区 ほげほげ町”, “ ”) は4が返ってくるのでそれでSplitする ちなみに右から調べるInstrRevもある : デフォルトの名無しさん [] 2019/02/08(金) 06:40:44.15:Ec5y9MTZ あと検索文字がない場合は0を返すから条件式で使うなら Instr(Jusyo, “ ”) <> 0 Then にしといた方がいいかも 他の人が見たとき「?」になる : デフォルトの名無しさん [sage] 2019/02/08(金) 07:17:52.94:SOh8GklL やってみた 結果、E列 あ い か き く さ た ち た ち 答えは以下が正しいのとG列の式を H列以降に無限に張らなければいけないのが問題ある 他にも問題があるかもしれないが・・・ あい かきく さ たち : デフォルトの名無しさん [] 2019/02/08(金) 07:21:27.36:SOh8GklL ここで、ヒントを出してるのに 作業列は1列で十分 : デフォルトの名無しさん [sage] 2019/02/08(金) 07:26:35.12:ViZCNFeP フラッシュ演算のやりとり見てて思ったけど 文字にして答えを文字結合すればアルツハイマーテストに使えるんじゃね? : デフォルトの名無しさん [sage] 2019/02/08(金) 08:20:58.27:SOh8GklL すまん 無理にピボットテーブルや式でやらず フィルターで列Aが1を表示でいいな : デフォルトの名無しさん [sage] 2019/02/08(金) 11:14:58.05:SOh8GklL 住所印刷なら、郵便番号が有るだろう 郵便番号の住所変換ルーチンはある 住所は郵便番号と比較すべきで比較してエラーを出すべき 郵便番号に合致する部分を1行目、それ以外を2行目が良いだろ : デフォルトの名無しさん [sage] 2019/02/08(金) 11:46:52.42:SOh8GklL 色々使えるだろうね 文字の表示位置を変えてタッチパネルでやるとか 応用範囲は広いがちゃんと全画面表示や文字の大きさ位 自動でできないとな、今時4Kモニターも出てるし・・・ : デフォルトの名無しさん [sage] 2019/02/08(金) 12:00:58.70:CDEogeBV limitオプションで回答は出てますが、実用的には長い住所の時は複数回改行も有り得るんではないでしょうか またフォーマットが変わったときに全ての住所録の全角位置を調整するのが大変だと思われます なので記入者には単純に単語毎にスペースを入れて貰って、適時自然な位置で改行するのはどうでしょうか : デフォルトの名無しさん [] 2019/02/08(金) 12:14:24.08:WyTY+E9f 運用でカバーできたら誰も苦労しないよね : デフォルトの名無しさん [] 2019/02/08(金) 12:19:37.60:jEYFKApV 自然な位置てなんやねん : デフォルトの名無しさん [sage] 2019/02/08(金) 12:29:29.52:CDEogeBV 一行の文字数を決めて、そこからInStrRevで最後のスペース位置を検索してLF挿入です コード書いたんですが何故かブロックされます・・・ : デフォルトの名無しさん [sage] 2019/02/08(金) 12:31:14.56:SOh8GklL >郵便番号に合致する部分を1行目、それ以外を2行目が良いだろ 2行目があふれても、それは枠内で表示するだけで問題ないだろ どうせ印刷はWordのあて名書きだろ2行目の表示エリアを広くしておけば問題ない : デフォルトの名無しさん [sage] 2019/02/08(金) 12:35:06.44:CDEogeBV 拙いですが折角書いたのでうpしました ttp://https://ux.getuploader.com/dialogues_txt/download/129 エクセルだと思うし、表示エリアを広くで済むならそもそも改行不要なのでは・・・ 👀 Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2) : デフォルトの名無しさん [] 2019/02/08(金) 12:59:45.99:WyTY+E9f 普通は郵便番号と住所は別カラムだろ というか質問者は郵便番号の話してないから : デフォルトの名無しさん [sage] 2019/02/08(金) 13:11:41.88:SOh8GklL 空想の世界で生きるのも人生 実態を考えるのも人生 好きにしてね ちなみに、午後だからやばいかも : デフォルトの名無しさん [sage] 2019/02/08(金) 13:14:37.20:SOh8GklL 見栄えがあるよな、企業が出すなら すまないが午後になったのでテストはしてない : デフォルトの名無しさん [] 2019/02/08(金) 13:19:24.26:WyTY+E9f くっさ : デフォルトの名無しさん [sage] 2019/02/08(金) 15:18:18.79:ZcpxXTEs うちのシステムだとテキストボックスが既に3つになってて一段目が市区町村まで、二段目が枝番まで、三段目が物件名と部屋番+様方、会社名とかって決まってる。 : デフォルトの名無しさん [sage] 2019/02/08(金) 15:20:53.99:SOh8GklL まあ、なんだな住所を2行にしたいなんてあて名書きだけだろ それって、Wordのあて名書き印刷ぐらい で、きれいに住所を分けるのは郵便番号に載っている住所で区切るんだよ それ以外は長いマンション名あるけど適当に範囲内で打てばいいんだよ 今時郵便番号を管理しない住所録もないだろ まあ、引きこもりにはわからないかもしれないが : デフォルトの名無しさん [sage] 2019/02/08(金) 15:21:19.17:ZcpxXTEs 追記、登録する人にはこれで宛名出るからって言ってある。 : デフォルトの名無しさん [sage] 2019/02/08(金) 15:21:58.27:RRS+yeTf 市区町村の名前のDB作ればいいんじゃね : デフォルトの名無しさん [sage] 2019/02/08(金) 15:29:02.53:SOh8GklL お前の所への質問じゃないな あと、分けて入力するフォームも結構あるが 無視されることも多いだろ 気にしているところは、まず郵便番号を聞くな : デフォルトの名無しさん [sage] 2019/02/08(金) 16:46:02.55:QatAiOm8 「1つ目のスペースで2つに分ける。2つ目以降のスペースは無視」という解決ではなく 「分割が発生したら住所を2つに再結合する」という解決だけど Sub test() Dim tmp As Variant Dim i As Integer Dim jusho0 As String Dim jusho1 As String Dim jusho2 As String jusho0 = Sheets("住所").Range("A1").Value '参照するセルは自分で書いてください tmp = Split(jusho0, " ") '文字を分割して If UBound(tmp) > 0 Then '分割が発生していたら再結合する jusho1 = tmp(0) For i = 1 To UBound(tmp) jusho2 = jusho2 & tmp(i) Next i Else jusho1 = jusho0 '分割が発生していなかったらそのまま代入する jusho2 = " " End If Sheets("印刷元").Range("A1") = jusho1 Sheets("印刷元").Range("A2") = jusho2 End Sub これでいけるはず : デフォルトの名無しさん [sage] 2019/02/08(金) 18:27:58.69:CDEogeBV でいいですし、デリミタが潰れたままになってますよ : デフォルトの名無しさん [sage] 2019/02/08(金) 19:06:53.88:imEPOnT1 もしSplit( )で分割数の制限ができなくて > 「分割が発生したら住所を2つに再結合する」 としても Sub test() Dim tmp As Variant Dim i As Integer Dim jusho0 As String Dim jusho1 As String Dim jusho2 As String jusho0 = Sheets("住所").Range("A1").Value '参照するセルは自分で書いてください tmp = Split(jusho0, " ") '文字を分割して jusho1 = tmp(0) jusho2 = "" For i = 1 To UBound(tmp) jusho2 = jusho2 & tmp(i) Next i Sheets("印刷元").Range("A1") = jusho1 Sheets("印刷元").Range("A2") = jusho2 End Sub でいいだろ ちょっとトリッキーだけど jusho1 = tmp(0) tmp(0) = "" jusho2 = Join(tmp, "") ってやる手もあるな : デフォルトの名無しさん [sage] 2019/02/08(金) 20:28:18.13:v6US6OW1 どこで質問していいのかわからないので、ここにお邪魔します Jscript、 拡張子がjsのファイルですが、これでエクセルを操作するのですが、 複数のワークシートがあるxlsファイルを開いた状態で var book = GetObject("C:\\file.xls"); var sheet = book.Worksheets( 1 ); sheet.cells( 2, 2 ).Select; としたとき、1のワークシートを開いているときは問題ないのですが、他のワークシートを開いているときは エラーになります。でも、 sheet.cells( 2,2 ) = 5 は問題なくできます つまり、タブで対象となるワークシート以外の他のワークシートを選択しているとき、 代入はできるのに、選択ができないのです 選択をできる方法ってありますか
凡例:
レス番
100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている
名前
名無しさん (青) → sage のレス
名無しさん (緑) → age のレス
ID
ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID
このページは2ch勢いランキング が作成したアーカイブです。削除についてはこちら 。