[過去ログ]
Excel VBA 質問スレ Part68 (1002レス)
Excel VBA 質問スレ Part68 http://mevius.5ch.io/test/read.cgi/tech/1598756127/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
446: デフォルトの名無しさん (ワッチョイ f35f-67ZW) [] 2020/10/02(金) 01:49:29 ID:ChxT/cO/0 >>439 そもそも手順というものを考えた方がいい。 移動する前の情報を移動先には持ってくるが、移動元にはその情報を適用しないのはなぜ? http://mevius.5ch.io/test/read.cgi/tech/1598756127/446
447: デフォルトの名無しさん (ワッチョイ d3cc-gW4a) [sage] 2020/10/02(金) 10:09:18 ID:A7BNHAQE0 指定したフォルダ内の全てのCVSファイルを配列に追記していき対のですが、コードを教えてください 配列の0列目(1次元目)にはそれぞれのCSVファイルのファイル名をいれたいです。 Sub Sptyou() Dim FolderPath As String, buf As String, TargetDate As String '■フォルダを指定する With Application.FileDialog(msoFileDialogFolderPicker) If .Show = 0 Then MsgBox "キャンセルされました。" Exit Sub End If FolderPath = .SelectedItems(1) End With '■指定されたフォルダ内の全てのCSVファイルを開いて、そのファイルA列からGH列を配列に入れていく ReDim BiforeArraybar(1, 190) As Variant http://mevius.5ch.io/test/read.cgi/tech/1598756127/447
448: 447 (ワッチョイ d3cc-gW4a) [sage] 2020/10/02(金) 10:09:56 ID:A7BNHAQE0 つづき buf = Dir(FolderPath & "*.csv") Do While buf <> "" Open buf For Input As #1 'インプットモードでファイルを開く Line Input #1, TargetDate Do Until EOF(1) 'ファイルの終点まで Line Input #1, Tardt '開いたファイルを上から順に読み込んでいき、変数TargetDateに代入していく If Split(TargetDate, ",")(1) = "" Then Exit Do '配列に追記する ReDim Preserve BiforeArray(Ubound(BiforeArray) + 1 To ??, 1 To 190) = Sprit(TargetDate,",") Loop Close #1 buf = Dir() Loop End Sub http://mevius.5ch.io/test/read.cgi/tech/1598756127/448
449: デフォルトの名無しさん (ブーイモ MM27-gZNM) [sage] 2020/10/02(金) 10:42:45 ID:cHoSzh9XM ReDim Preserveで操作可能なのは最右端の次元だけだから2次元配列で1次元目に使いたいなら一旦反転させた状態で操作して出力時にWorksheetfunction.transpose使って吐き出す必要があるぞ いまいち最終目的が分からなかったから取り合えず読んでて気になった所だけ http://mevius.5ch.io/test/read.cgi/tech/1598756127/449
450: デフォルトの名無しさん (ワッチョイ d32c-G8Sl) [sage] 2020/10/02(金) 10:56:02 ID:ooD45Zz30 Linux のcat なら、複数のファイルを連結できるけど http://mevius.5ch.io/test/read.cgi/tech/1598756127/450
451: デフォルトの名無しさん (ラクッペペ MM7f-62ru) [] 2020/10/02(金) 12:25:22 ID:XdHW2/g2M win dosならcopyで連結できるけど http://mevius.5ch.io/test/read.cgi/tech/1598756127/451
452: デフォルトの名無しさん (ワッチョイ d3da-Kk5w) [sage] 2020/10/02(金) 12:29:54 ID:a296oIK60 >>448 内側のLoop内で Tardt ってのが気になった http://mevius.5ch.io/test/read.cgi/tech/1598756127/452
453: 447 (ワッチョイ d3cc-jreG) [sage] 2020/10/02(金) 13:32:21 ID:A7BNHAQE0 >>449 右端にファイル名を入れるにはどうしたらいいですか? それと、配列のUpperをどう設定したらいいですか? http://mevius.5ch.io/test/read.cgi/tech/1598756127/453
454: デフォルトの名無しさん (ワッチョイ ff6d-Zm3W) [] 2020/10/02(金) 15:56:01 ID:7/1+1goB0 また馬鹿な質問者か。それともいつもの厚かましい馬鹿か? http://mevius.5ch.io/test/read.cgi/tech/1598756127/454
455: デフォルトの名無しさん (ラクッペペ MM7f-62ru) [] 2020/10/02(金) 16:13:26 ID:XdHW2/g2M 右端の次元と右端の列では話の次元が違うけどわざとやってんのかなー? excelなんだからとりあえずシートに格納すればいいと思うんだけどなー 配列に1行づつ追加するよりはやいんじゃね? VBは動的配列無いんだからパフォーマンス出すには頭を使わにゃいかんよ 行数をキーにしたDictionaryもいいかもね http://mevius.5ch.io/test/read.cgi/tech/1598756127/455
456: デフォルトの名無しさん (ワッチョイ ffad-gZNM) [sage] 2020/10/02(金) 16:51:14 ID:p6rjz1Jr0 >>453 配列のUpperが何を意味してるのかいまいち分からんがこんな感じで良いんか? Line Input #1, TargetDate BeforeArray(0, Ubound(BeforeArray, 2)) = ファイル名 For文[1〜190](BeforeArrayにSplit(TargetDate, ″,″)を放り込む) ReDim Preserve BeforeArray(0 to 190, Ubound(BeforeArray, 2)+1) Do Until EOF(1) Line Input #1, TargetDate For文[1〜190](BeforeArrayにSplit(TargetDate, ″,″)を放り込む) ReDim Preserve BeforeArray(0 to 190, Ubound(BeforeArray, 2)+1) Loop http://mevius.5ch.io/test/read.cgi/tech/1598756127/456
457: デフォルトの名無しさん (ワッチョイ d3da-Kk5w) [sage] 2020/10/02(金) 18:32:48 ID:a296oIK60 >>453 こういうことじゃないのか targetdata = buf & "," & targetdata http://mevius.5ch.io/test/read.cgi/tech/1598756127/457
458: デフォルトの名無しさん (ワッチョイ e3da-Kk5w) [sage] 2020/10/02(金) 22:17:00 ID:MWdBgx4Q0 >>455 サイドブレーキを使う坂道発進をダサイと感じるようなもので、 どう考えてもシート格納が合理的なのに、無理して配列を使うわけですよ。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/458
459: デフォルトの名無しさん (ワッチョイ d32c-G8Sl) [sage] 2020/10/02(金) 23:43:54 ID:ooD45Zz30 CSV の規格では、各要素をクォート文字で囲めば、 各要素中に、列区切り文字も入れられる "a,b", x Ruby などのCSVライブラリを使わず、 自力で、列区切り文字で分割すると、バグるだけ CSVの規格を知らない香具師が、よくやってる http://mevius.5ch.io/test/read.cgi/tech/1598756127/459
460: デフォルトの名無しさん (ワッチョイ 7f4b-3DJV) [sage] 2020/10/03(土) 00:18:46 ID:DSTQ9BDR0 csvに規格ってあったんだ http://mevius.5ch.io/test/read.cgi/tech/1598756127/460
461: デフォルトの名無しさん (ワッチョイ f35f-MSJL) [] 2020/10/03(土) 07:11:14 ID:umHauNXS0 ExcelでCSVをダブルクリックで開いて編集、上書きして事故る人が多いね http://mevius.5ch.io/test/read.cgi/tech/1598756127/461
462: デフォルトの名無しさん (ワッチョイ ff01-V07v) [sage] 2020/10/03(土) 07:17:22 ID:NCQ7EVNV0 >>460 一応あるけど結局Excelで読めないとダメって言うケースが大多数だったりする http://www.kasai.fm/wiki/rfc4180jp http://mevius.5ch.io/test/read.cgi/tech/1598756127/462
463: デフォルトの名無しさん (ワッチョイ 53ce-2+Dn) [sage] 2020/10/03(土) 08:43:50 ID:2jz2H7gQ0 そのRFCって、たくさんあるローカルルールの1つを紹介してるだけだよな 強制力もなさそうだし、現時点ではあんまり意味がなさそう http://mevius.5ch.io/test/read.cgi/tech/1598756127/463
464: デフォルトの名無しさん (ワッチョイ f35f-67ZW) [] 2020/10/03(土) 11:51:59 ID:ylT9+9xh0 >>459 マイクロソフトの製品はそれに沿っているものがあるが、クォーテーションがついたり、つかなかったりするのは、人間にとってもタチが悪く、完全に失敗した仕様と結論が出ている。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/464
465: 459 (ワッチョイ d32c-IT45) [sage] 2020/10/03(土) 13:01:37 ID:/wA+nWqo0 列区切り文字は、必要なければ省略できる つまり、x も、"x" も同じ。 全ての要素に、付けてもよい ただし、"a,b" みたいに要素内に、 行区切り文字・列区切り文字・クォート文字を含む場合は、省略できない http://mevius.5ch.io/test/read.cgi/tech/1598756127/465
466: 459 (ワッチョイ d32c-IT45) [sage] 2020/10/03(土) 13:03:38 ID:/wA+nWqo0 >>465 修正 >列区切り文字は、必要なければ省略できる クォート文字は、必要なければ省略できる http://mevius.5ch.io/test/read.cgi/tech/1598756127/466
467: デフォルトの名無しさん (ワッチョイ 7f4b-3DJV) [sage] 2020/10/03(土) 13:04:25 ID:DSTQ9BDR0 できないって言われましても強制力無いですし http://mevius.5ch.io/test/read.cgi/tech/1598756127/467
468: デフォルトの名無しさん (ワッチョイ ff2f-G8Sl) [sage] 2020/10/03(土) 13:34:48 ID:zZGrTJee0 まあそもそも多数の実装が出てからそれ集めて決めた仕様だからな http://mevius.5ch.io/test/read.cgi/tech/1598756127/468
469: デフォルトの名無しさん (ワッチョイ e3da-Kk5w) [sage] 2020/10/03(土) 19:43:36 ID:WrZNWJut0 そういやあれ何だろうな。 QueryTableだとセル内改行でずれるのに、 ADOだとずれないとか。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/469
470: デフォルトの名無しさん (ワッチョイ 6309-gW4a) [sage] 2020/10/04(日) 19:09:07 ID:mqiPq7lq0 配列を戻す自作関数を呼び出し先Subから複数回実行して、配列を結合したい んだけど、どうすればできますか? redim preserveとUBoundを使うのかも しれないけど、いい感じにまとまったコードが書けない。 例えば、下の関数を、別のSubから2回実行させて、 「Ary(3) ※中身:path1,path2,path1,path2」 の結果を得たいです。 Function TestFunc() Dim testPath(1) testPath(0) = "path1" testPath(1) = "path2" 'return TestFunc = testPath End Function http://mevius.5ch.io/test/read.cgi/tech/1598756127/470
471: デフォルトの名無しさん (ワッチョイ 6309-gW4a) [sage] 2020/10/04(日) 19:09:08 ID:mqiPq7lq0 配列を戻す自作関数を呼び出し先Subから複数回実行して、配列を結合したい んだけど、どうすればできますか? redim preserveとUBoundを使うのかも しれないけど、いい感じにまとまったコードが書けない。 例えば、下の関数を、別のSubから2回実行させて、 「Ary(3) ※中身:path1,path2,path1,path2」 の結果を得たいです。 Function TestFunc() Dim testPath(1) testPath(0) = "path1" testPath(1) = "path2" 'return TestFunc = testPath End Function http://mevius.5ch.io/test/read.cgi/tech/1598756127/471
472: デフォルトの名無しさん (ワッチョイ 6309-gW4a) [sage] 2020/10/04(日) 19:09:56 ID:mqiPq7lq0 連投すいません http://mevius.5ch.io/test/read.cgi/tech/1598756127/472
473: デフォルトの名無しさん (スッップ Sd1f-+ya4) [sage] 2020/10/04(日) 19:15:03 ID:l1LxtJm7d 注意 ID:mqiPq7lq0 いつもの馬鹿です http://mevius.5ch.io/test/read.cgi/tech/1598756127/473
474: デフォルトの名無しさん (ワッチョイ d3da-Kk5w) [sage] 2020/10/04(日) 21:13:23 ID:3bz1Ts/P0 >>471 検索したらいいんじゃね http://mevius.5ch.io/test/read.cgi/tech/1598756127/474
475: デフォルトの名無しさん (ワッチョイ b37c-Uy5C) [sage] 2020/10/04(日) 21:42:10 ID:NRUY+ZF00 >>471 例えとかいい感じとかじゃなくて正確にコードを提示してどの部分をどうしたいのか明確に説明した方がいいよ http://mevius.5ch.io/test/read.cgi/tech/1598756127/475
476: デフォルトの名無しさん (スッップ Sd1f-EBv7) [] 2020/10/04(日) 21:43:28 ID:hlbFeQNpd 後出し続けて全部作ってもらおうという魂胆の奴だぞ http://mevius.5ch.io/test/read.cgi/tech/1598756127/476
477: デフォルトの名無しさん (オッペケ Sr47-owA3) [sage] 2020/10/05(月) 01:21:09 ID:Roj0MJiCr VBAからIEを操作して、タグを指定して.valueやselctedで自動化しているのですが、ヤフオクの商品説明だけどうしても値の挿入ができません。 Tabや近い要素をフォーカスしたりクリックし、SendkeyなどでShift +Tabからエンダーなど試していますが、一向に解決できません。 直接でか無くてもカーソルが点滅させれれば、クリップボード経由で貼り付けるような仕様にしようと考えています。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/477
478: デフォルトの名無しさん (ワッチョイ d32c-IT45) [sage] 2020/10/05(月) 07:08:41 ID:z7kgQPv30 漏れは、Ruby, Selenium Webdriver で、ブラウザを自動操作して、 send_key で、ユーザー名・パスワードを自動入力して、ヤフーにログインしてる require "selenium-webdriver" options = Selenium::WebDriver::Chrome::Options.new options.add_option( :detach, true ) # ブラウザを切り離す options.add_argument( '--start-maximized' ) # 画面最大 driver = Selenium::WebDriver.for :chrome, options: options driver.manage.timeouts.implicit_wait = 10 # default timeout driver.navigate.to "https://login.yahoo.co.jp/config/login_verify2?.src=ym" element = driver.find_element(:id => "username") element.send_key "ユーザー名" driver.find_element(:id => "btnNext").click element = driver.find_element(:id => "passwd") element.send_key "パスワード" driver.find_element(:id => "btnSubmit").click http://mevius.5ch.io/test/read.cgi/tech/1598756127/478
479: 478 (ワッチョイ d32c-IT45) [sage] 2020/10/05(月) 07:11:02 ID:z7kgQPv30 そもそも、IE なんか動くのか? 漏れは、Chrome http://mevius.5ch.io/test/read.cgi/tech/1598756127/479
480: デフォルトの名無しさん (バットンキン MMc7-7HYc) [sage] 2020/10/05(月) 12:57:11 ID:BlyIycRMM >>475 すみません。 Sub test Dim i,ary() For i = 1 to 2 ary = TestFunc ※ary配列の要素の最後に呼び出した配列を追加していきたい Next End http://mevius.5ch.io/test/read.cgi/tech/1598756127/480
481: デフォルトの名無しさん (ワッチョイ d3da-Kk5w) [sage] 2020/10/05(月) 13:22:13 ID:PJYbs+y10 配列に配列を追加するのを初心者がつくるなら 追加する2つの配列と結果を格納する配列の計3つを用意して順番に格納すればできないかな? http://mevius.5ch.io/test/read.cgi/tech/1598756127/481
482: デフォルトの名無しさん (ワントンキン MMe7-hUkp) [sage] 2020/10/05(月) 14:35:29 ID:8f5Gi5TxM >>480 いい加減にしろや糞が http://mevius.5ch.io/test/read.cgi/tech/1598756127/482
483: デフォルトの名無しさん (ワッチョイ ff2f-IT45) [sage] 2020/10/05(月) 14:54:20 ID:3En1oQ3G0 >>471 redim preserveとUBoundを使うのかも まあしかし、その処理ほんとに配列でやるのが良いのか検討したほうが良いんだが VBAコレクション系弱いからなぁ http://mevius.5ch.io/test/read.cgi/tech/1598756127/483
484: デフォルトの名無しさん (ワッチョイ d3da-y5MG) [sage] 2020/10/05(月) 15:05:07 ID:PJYbs+y10 検索すればすむのにね http://mevius.5ch.io/test/read.cgi/tech/1598756127/484
485: デフォルトの名無しさん (バットンキン MMc7-7HYc) [sage] 2020/10/05(月) 17:50:38 ID:BlyIycRMM >>481 >>483 ありがとうございました。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/485
486: デフォルトの名無しさん (ブーイモ MMe7-k/5x) [sage] 2020/10/05(月) 17:58:27 ID:FAPvswgpM 喧嘩腰だなあ 何しにきてんのさ http://mevius.5ch.io/test/read.cgi/tech/1598756127/486
487: デフォルトの名無しさん (アウアウウー Sa27-y5MG) [sage] 2020/10/05(月) 18:26:34 ID:KW0b9HJla くれくれ君だからしょうがないだろ http://mevius.5ch.io/test/read.cgi/tech/1598756127/487
488: デフォルトの名無しさん (ラクッペペ MM7f-62ru) [] 2020/10/05(月) 19:48:49 ID:UUAqkjmTM >>484 F1キー押す方が早くね? http://mevius.5ch.io/test/read.cgi/tech/1598756127/488
489: デフォルトの名無しさん (ワッチョイ 53ce-2+Dn) [sage] 2020/10/05(月) 19:51:04 ID:0f3oInSL0 >>488 押すだけならワンキーだけど、オンラインヘルプはそこからが長い http://mevius.5ch.io/test/read.cgi/tech/1598756127/489
490: デフォルトの名無しさん (ワッチョイ d3da-Kk5w) [sage] 2020/10/06(火) 10:31:57 ID:9/35+5mY0 大人の対応でうまく誘導してやろうぜ http://mevius.5ch.io/test/read.cgi/tech/1598756127/490
491: デフォルトの名無しさん (ワッチョイ 1b63-dHQN) [sage] 2020/10/07(水) 19:45:01 ID:FTOZLATq0 下記のように特定の文字を削除して、改行をやめて1行文にしたいのですがコードのご教示いただけないでしょうか やんやんつけ棒§ めちゃ美味い ポテトチップス§ めちゃ美味い ↓ やんやんつけ棒めちゃ美味い ポテトチップスめちゃ美味い http://mevius.5ch.io/test/read.cgi/tech/1598756127/491
492: デフォルトの名無しさん (テテンテンテン MM86-J9E+) [sage] 2020/10/07(水) 20:04:32 ID:7ZMz7DKjM まともなテキストエディタ(VSCodeとかサクラエディタとか)で開いて正規表現置換で§¥r¥を空に置換すればよい http://mevius.5ch.io/test/read.cgi/tech/1598756127/492
493: デフォルトの名無しさん (テテンテンテン MM86-J9E+) [sage] 2020/10/07(水) 20:05:03 ID:7ZMz7DKjM 訂正 §¥r¥n http://mevius.5ch.io/test/read.cgi/tech/1598756127/493
494: デフォルトの名無しさん (ワッチョイ 1b63-dHQN) [sage] 2020/10/07(水) 20:27:15 ID:FTOZLATq0 >>492 なるほど…めちゃ助かります。ありがとうございます。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/494
495: デフォルトの名無しさん (ワッチョイ 8ae6-SfJD) [] 2020/10/07(水) 21:05:04 ID:8t5FIA980 もっと面白い質問しろよ http://mevius.5ch.io/test/read.cgi/tech/1598756127/495
496: デフォルトの名無しさん (アウアウウー Sa2f-tQNK) [sage] 2020/10/07(水) 21:08:11 ID:EPmDsevha やんやんつけ棒って何? http://mevius.5ch.io/test/read.cgi/tech/1598756127/496
497: デフォルトの名無しさん (ワッチョイ 1b63-dHQN) [sage] 2020/10/07(水) 21:08:37 ID:FTOZLATq0 申し訳ありません、もう一点 A1:私は実は理学部出身 A2:の元々は地質学者です A3: A4:こうした南鳥島で A5: A6:レアアースの濃集が A7:起こる A8: A9:というのは A10: A11:特徴的な層準に ↓ A1:私は実は理学部出身 の元々は地質学者です A2:こうした南鳥島で A3:レアアースの濃集が 起こる A4:というのは A5:特徴的な層準に 下の行に文字列 → 2行の文章として、改行を入れてExcelの1マスにまとめる 下の行が空白 → 1行の文書なのでそのまま これをなんとかVBAで自動化したいのですが記述を教示願えますでしょうか 面白くない質問ですみません… http://mevius.5ch.io/test/read.cgi/tech/1598756127/497
498: デフォルトの名無しさん (ワッチョイ 9f7c-eFyE) [sage] 2020/10/07(水) 21:11:26 ID:JTTOzasI0 >>497 その条件2つそのままコードに直していけるよ http://mevius.5ch.io/test/read.cgi/tech/1598756127/498
499: デフォルトの名無しさん (ワッチョイ cbda-xYNh) [sage] 2020/10/07(水) 21:17:21 ID:ueKkqa210 改行がLfなのかCrなのかCrLfなのか知らんが Replace("改行入りの文字列", vbLf, "") http://mevius.5ch.io/test/read.cgi/tech/1598756127/499
500: デフォルトの名無しさん (ワッチョイ 9f7c-eFyE) [sage] 2020/10/07(水) 21:58:27 ID:JTTOzasI0 >>499 そんなことしたら改行しなくなるが… http://mevius.5ch.io/test/read.cgi/tech/1598756127/500
501: デフォルトの名無しさん (ワッチョイ ca6d-zMau) [] 2020/10/07(水) 22:16:39 ID:XaxSLEYL0 いつものクレクレ君かな http://mevius.5ch.io/test/read.cgi/tech/1598756127/501
502: デフォルトの名無しさん (ワントンキン MM3a-pCej) [sage] 2020/10/07(水) 22:51:28 ID:7uT04k8fM ・コードを要求 ・追加で教えて いつもの人だね http://mevius.5ch.io/test/read.cgi/tech/1598756127/502
503: デフォルトの名無しさん (ワッチョイ 8ae6-KV+F) [sage] 2020/10/07(水) 22:54:48 ID:8t5FIA980 普通に書けばできることを聞く意味が分からん もしかして書けないの? 書けないならやめればいいのに http://mevius.5ch.io/test/read.cgi/tech/1598756127/503
504: デフォルトの名無しさん (ドコグロ MM02-dHQN) [sage] 2020/10/07(水) 22:56:25 ID:Az9cGqg8M >>498 >>499 ありがとうございますm(__)m http://mevius.5ch.io/test/read.cgi/tech/1598756127/504
505: デフォルトの名無しさん (ワッチョイ 67da-xYNh) [sage] 2020/10/08(木) 01:49:40 ID:584FeZ4r0 >>497 VBAに慣れている人なら簡単に自動化というかVBAで組める内容ではある 問題はこの程度の内容を質問するより先に、自力でできるとこまで自分で やらなかった最初の一歩が間違っているんだと思う http://mevius.5ch.io/test/read.cgi/tech/1598756127/505
506: デフォルトの名無しさん (アウアウウー Sa2f-J9E+) [sage] 2020/10/08(木) 09:04:33 ID:BqKPxLQJa CSVとして保存 VSCode等のまともなエディタで開く ([^¥r]+)¥r¥n([^¥r]+)を”$1¥r¥n$2”に置換 ¥r¥n¥r¥nを¥r¥nに置換 Excelにインポート >>492同様にワンショットでいいならこんな感じでいけるんじゃね http://mevius.5ch.io/test/read.cgi/tech/1598756127/506
507: デフォルトの名無しさん (ワッチョイ 67da-tQNK) [sage] 2020/10/08(木) 14:32:22 ID:584FeZ4r0 それができないのが初心者 http://mevius.5ch.io/test/read.cgi/tech/1598756127/507
508: デフォルトの名無しさん (ブーイモ MM76-HnI9) [sage] 2020/10/08(木) 15:37:32 ID:d1cy1ieUM クレクレ君のより煽ってる奴のがうざいんだけどね VBAだけが人並にできるからこのスレにいつも欠かさず覗きにきてる感じか? いつものお前が邪魔ですよお http://mevius.5ch.io/test/read.cgi/tech/1598756127/508
509: デフォルトの名無しさん (ワッチョイ 0668-xYNh) [sage] 2020/10/08(木) 15:59:16 ID:btiqMG+Y0 >>508 大丈夫スルーしてるから 遠まわしでも構うと同列に http://mevius.5ch.io/test/read.cgi/tech/1598756127/509
510: デフォルトの名無しさん (ワントンキン MM3a-R/IE) [sage] 2020/10/08(木) 17:05:05 ID:+6fedHspM >>508 くれくれ君本人乙 http://mevius.5ch.io/test/read.cgi/tech/1598756127/510
511: デフォルトの名無しさん (ワッチョイ 9f7c-eFyE) [sage] 2020/10/08(木) 19:30:11 ID:bwT1M8vM0 >>507 できないことは問題じゃない やろうとしないことが問題 http://mevius.5ch.io/test/read.cgi/tech/1598756127/511
512: デフォルトの名無しさん (ワッチョイ 1b63-dHQN) [sage] 2020/10/08(木) 19:55:49 ID:YPYO8uSI0 たしかにやろうとしないことが問題 てのは御指摘のとおりですね。すみません。 映像制作を生業としてますが普段tipsを聞くのりで聞いてしまいました。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/512
513: デフォルトの名無しさん (ワッチョイ ca4f-+ixC) [sage] 2020/10/08(木) 20:04:37 ID:KjDVO4Tm0 >>512 5chなんて便所の落書きなんだからそれでいいと思う。 ただ、まともな返事を期待して馬鹿を見ても仕方ない場所でもあるけれど。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/513
514: デフォルトの名無しさん (スフッ Sdea-gn5F) [sage] 2020/10/08(木) 21:04:52 ID:DcpygGCOd ただでさえ印象悪いのにどうでもいい言い訳まで付けてさらに印象悪くするよくあるパターン http://mevius.5ch.io/test/read.cgi/tech/1598756127/514
515: デフォルトの名無しさん (ワッチョイ 6bda-q18j) [] 2020/10/09(金) 00:24:11 ID:t8qEIjmh0 Dim dw As Date Dim i As Integer Sub test() 'ランダムに並び替える Randomize '乱数を入れる For i = 1 To 200 Cells(i, 2) = Rnd() Next i '乱数で昇順並び替え Range("A1:B200").Sort _ Key1:=Range("B1"), Order1:=xlAscending, _ Header:=xlNo, _ OrderCustom:=1, _ MatchCase:=False, _ Orientation:=xlTopToBottom, _ SortMethod:=xlPinYin '乱数を削除 Range("B1:B200").Clear dw = DateAdd("S", 5, Now) Application.OnTime dw, "test" End Sub http://mevius.5ch.io/test/read.cgi/tech/1598756127/515
516: デフォルトの名無しさん (ワッチョイ 6bda-q18j) [] 2020/10/09(金) 00:26:14 ID:t8qEIjmh0 >>515 のdw = DateAdd("S", 5, Now) Application.OnTime dw, "test" を入れると、 「実行できません。このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります。」 となってしまいます。 「マクロのセキュリティ」は「すべて有効」にしています。 どうすればいいでしょうか http://mevius.5ch.io/test/read.cgi/tech/1598756127/516
517: デフォルトの名無しさん (ワッチョイ 4a2f-Dl/i) [sage] 2020/10/09(金) 00:56:17 ID:8xBy2vBw0 >>516 そのプロシジャを標準モジュールに書く CellsとかRangeとか、ちゃんとシート指定しといたほうが良いぞ http://mevius.5ch.io/test/read.cgi/tech/1598756127/517
518: デフォルトの名無しさん (ワッチョイ 6bda-q18j) [] 2020/10/09(金) 01:28:40 ID:t8qEIjmh0 >>517 できました! >CellsとかRangeとか、ちゃんとシート指定しといたほうが良いぞ わかりました ありがとうございました。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/518
519: デフォルトの名無しさん (ワッチョイ 0f41-ICsZ) [sage] 2020/10/09(金) 16:14:30 ID:SmS5zjtB0 1,1,2,2,3,4,4,4,5,6 を 1-1,1-2,2-1,2-2,3,4-1,4-2,4-3,5,6 に変換したいのですが、どういうコード書けばよいのでしょうか? http://mevius.5ch.io/test/read.cgi/tech/1598756127/519
520: デフォルトの名無しさん (ワッチョイ 4aad-YPNF) [sage] 2020/10/09(金) 16:19:59 ID:5DciVe+j0 連想配列使ってカウントするか(0 to 対象の値のMax)の配列を用意して、Array(対象の値)にカウントするかが1番頭使わなくて済むかな? http://mevius.5ch.io/test/read.cgi/tech/1598756127/520
521: デフォルトの名無しさん (ブーイモ MM76-HnI9) [sage] 2020/10/09(金) 16:55:39 ID:9cfuJ5OLM かなり前だけどこのスレで教わったアドバイスが今やってることでピンときた タブ増やして進めてくより userformをhideとshowで工程進めてくみたいにしたほうがいいわ ありがとうかなり前に教えてくれた人! http://mevius.5ch.io/test/read.cgi/tech/1598756127/521
522: デフォルトの名無しさん (アウアウウー Sa2f-5jeW) [sage] 2020/10/09(金) 17:52:44 ID:OU1KT8YFa >>519 fori=1 to 要素数(※要素数はカンマで区切られた数) 数字=数字 & “-” & i next i みたいな感じで 前の数字と違ったら数字をリセット (iが1ならこの処理はしない) 要素がひとつなら処理せず次のiに http://mevius.5ch.io/test/read.cgi/tech/1598756127/522
523: デフォルトの名無しさん (ワッチョイ 2a4b-XTxo) [sage] 2020/10/09(金) 18:03:17 ID:klvVBjUq0 next i って書く人嫌い http://mevius.5ch.io/test/read.cgi/tech/1598756127/523
524: デフォルトの名無しさん (ササクッテロ Sp03-+ixC) [sage] 2020/10/09(金) 18:15:01 ID:FzRk+nqKp かなり前の話と言えば 昔Privateで書かれたプロパティを 外部から取得する方法を書いてた人がいたけど あれどうやるんだったっけ http://mevius.5ch.io/test/read.cgi/tech/1598756127/524
525: デフォルトの名無しさん (ワッチョイ 03e5-SfJD) [] 2020/10/09(金) 18:33:13 ID:/2wG1kS20 内部から漏洩させるのが確実 http://mevius.5ch.io/test/read.cgi/tech/1598756127/525
526: デフォルトの名無しさん (ワッチョイ 03e5-SfJD) [] 2020/10/09(金) 18:36:07 ID:/2wG1kS20 >>523 それ以前にまったく要望を満たしていない http://mevius.5ch.io/test/read.cgi/tech/1598756127/526
527: デフォルトの名無しさん (スプッッ Sd8a-Kms5) [sage] 2020/10/09(金) 21:13:45 ID:hr48HmJ4d >>517 俺はブックも必ず指定するけどね。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/527
528: デフォルトの名無しさん (スプッッ Sd8a-Kms5) [sage] 2020/10/09(金) 21:15:25 ID:hr48HmJ4d >>519 どうしたいのかもう少し言葉で説明してくれる? http://mevius.5ch.io/test/read.cgi/tech/1598756127/528
529: デフォルトの名無しさん (ワッチョイ cbda-xYNh) [sage] 2020/10/09(金) 21:41:09 ID:KqgB0xuS0 >>519 普通にカウントアップして、1から2に、2から3に上がるときにカウンターリセット。 http://mevius.5ch.io/test/read.cgi/tech/1598756127/529
530: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/09(金) 21:44:54 ID:VcvC9Dp/0 1つしかなかった時に連番を付けない処理が一手間多くて面倒 データの先読みが必要になる http://mevius.5ch.io/test/read.cgi/tech/1598756127/530
531: デフォルトの名無しさん (ワッチョイ 0668-xYNh) [sage] 2020/10/09(金) 21:49:11 ID:5R2Ih+qA0 出力タイミングを次の数字を見てからにすれば楽 http://mevius.5ch.io/test/read.cgi/tech/1598756127/531
532: デフォルトの名無しさん (ワッチョイ 9f7c-eFyE) [sage] 2020/10/09(金) 21:49:18 ID:2P2kQgrz0 1個でも複数でも変わらない おかしな考え方してるんだろう http://mevius.5ch.io/test/read.cgi/tech/1598756127/532
533: デフォルトの名無しさん (ワッチョイ 8ae6-SfJD) [] 2020/10/09(金) 21:49:40 ID:hWEYACMU0 >>528 1.処理速度 2.低コスト 3.低ステップ 4.読みやすさ 優先順位はとりあえずこんな感じで頼むわ http://mevius.5ch.io/test/read.cgi/tech/1598756127/533
534: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/09(金) 22:02:55 ID:VcvC9Dp/0 次の数字を見るかどうかの所で配列の最後かどうかも判定する必要があって面倒 シンプルでうまい方法があるんなら言葉じゃなくてコードで答えてくれ http://mevius.5ch.io/test/read.cgi/tech/1598756127/534
535: デフォルトの名無しさん (ワッチョイ 0b3d-5jeW) [sage] 2020/10/09(金) 22:06:14 ID:rNmj4HJx0 splitでカンマ区切りの配列化 instrで個数確認 かね? http://mevius.5ch.io/test/read.cgi/tech/1598756127/535
536: デフォルトの名無しさん (ワッチョイ 0b3d-5jeW) [sage] 2020/10/09(金) 22:07:17 ID:rNmj4HJx0 >>534 Uboundで判定して抜ければいいじゃん http://mevius.5ch.io/test/read.cgi/tech/1598756127/536
537: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/09(金) 22:19:01 ID:VcvC9Dp/0 >>536 ちゃんと動くコード書いてみて http://mevius.5ch.io/test/read.cgi/tech/1598756127/537
538: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/09(金) 22:24:25 ID:VcvC9Dp/0 Sub Macro1() Dim a(), b() a = Array(1, 1, 2, 2, 3, 4, 4, 4, 5, 6) u = UBound(a) ReDim Preserve a(u + 1) ReDim b(u) a(u + 1) = a(u) + 1 x = a(0) + 1 For i = 0 To u If a(i) - x Then c = 1 Else c = c + 1 End If If c = 1 Then b(i) = a(i) If a(i) = a(i + 1) And u - i Then b(i) = b(i) & "-1" Else b(i) = a(i) & "-" & c End If x = a(i) Next Debug.Print Join(b, ",") End Sub http://mevius.5ch.io/test/read.cgi/tech/1598756127/538
539: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/09(金) 22:47:08 ID:VcvC9Dp/0 これよりシンプルにするのは俺には無理だった Sub Macro1() Dim a$(), b() a = Split("1,1,2,2,3,4,4,4,5,6", ",") u = UBound(a) ReDim Preserve a(u + 1) ReDim b(u) a(u + 1) = a(u) + 1 x = a(0) + 1 For i = 0 To u b(i) = a(i) c = c + 1 If a(i) - x Then c = 1 If (c > 1) + (c = 1) * (a(i) = a(i + 1)) * (u - i) Then b(i) = b(i) & "-" & c x = a(i) Next Debug.Print Join(b, ",") End Sub http://mevius.5ch.io/test/read.cgi/tech/1598756127/539
540: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/09(金) 23:08:21 ID:VcvC9Dp/0 b(i) = b(i) & "-" & c ↓ b(i) = b(i) & -c http://mevius.5ch.io/test/read.cgi/tech/1598756127/540
541: デフォルトの名無しさん (ワッチョイ 672c-Dl/i) [sage] 2020/10/09(金) 23:19:19 ID:760t1BpC0 プログラミングのお題スレにも、たまにあるけど、 次の要素を先読みするのは面倒 スタックのpeek みたいに、要素を読み取るだけで、削除しない関数があればよい http://mevius.5ch.io/test/read.cgi/tech/1598756127/541
542: デフォルトの名無しさん (ワッチョイ 672c-Dl/i) [sage] 2020/10/10(土) 06:22:18 ID:BjcbKuib0 Ruby では、 # 一旦、整数の2次元配列にする。[[1, 1], [2, 2], [3], [4, 4, 4], [5], [6]] result_ary = input_ary = "1,1,2,2,3,4,4,4,5,6".split( "," ). chunk_while{ |prev, nxt| prev == nxt }.each_with_object( [ ] ) do |ary, acc| # 蓄積変数は配列 if ary.length == 1 acc.push( ary[ 0 ] ) else ary.each_with_index do |num, idx| acc.push( "#{ num }-#{ idx + 1 }" ) end end end puts result_ary.to_a.join( "," ) # カンマ区切り http://mevius.5ch.io/test/read.cgi/tech/1598756127/542
543: 542 (ワッチョイ 672c-Dl/i) [sage] 2020/10/10(土) 06:24:55 ID:BjcbKuib0 >>542 修正 ># 一旦、整数の2次元配列にする。[[1, 1], [2, 2], [3], [4, 4, 4], [5], [6]] 一旦、文字列の2次元配列にする http://mevius.5ch.io/test/read.cgi/tech/1598756127/543
544: 542 (ワッチョイ 672c-Dl/i) [sage] 2020/10/10(土) 06:29:37 ID:BjcbKuib0 >>542 修正 >result_ary = input_ary = "1,1,2,2,3,4,4,4,5,6".split( "," ). result_ary = "1,1,2,2,3,4,4,4,5,6".split( "," ). http://mevius.5ch.io/test/read.cgi/tech/1598756127/544
545: デフォルトの名無しさん (ワッチョイ 07ce-KV+F) [sage] 2020/10/10(土) 06:39:31 ID:WLqCacU70 データの種類が少なければ連想配列 http://mevius.5ch.io/test/read.cgi/tech/1598756127/545
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 457 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.201s*