[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/26 17:31 / Filesize : 282 KB / Number-of Response : 1019
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part75



1 名前:デフォルトの名無しさん mailto:sage [2022/02/09(水) 14:24:32.62 ID:I0u44nFvd.net]
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑2行に減ってるけど、同じ内容を3行に増やして貼り付けるナリ

ExcelのVBAに関する質問スレナリ
コード書き込みや作成依頼もOKナリ

※前スレ
Excel VBA 質問スレ Part74
https://mevius.5ch.net/test/read.cgi/tech/1639932059/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

543 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 19:43:12.04 ID:RqRNte220.net]
要求通りの動作をするコードが書ければできるやつだろ
検索しようが、他人に聞こうが何も見ないで作ろうが関係ないよ

544 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 20:11:44.87 ID:XWaROYx+0.net]
>>534
それだとエラーチェックとかどうでも良くなってしまう
使い捨てのスクリプトならともかく、その言い方はさすがに意識が低すぎる

545 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 20:12:25.07 ID:/GQ4L54F0.net]
納期を守ってちゃんと動く
結果がすべて
検索だろうがコピペだろうが関係ない

546 名前: []
[ここ壊れてます]

547 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 20:40:46.85 ID:jqc8A7wc0.net]
さっき会社の上司とたまたまそういう話したけど、やっぱ何も見ないでスラスラとコード書けるヤツいたら貴重だから重宝するって言っていた。
ただ、そういう人ほど初歩的なミスに気がつかないとも。

548 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 20:44:28.64 ID:ogVYp57ed.net]
>ただ、そういう人ほど初歩的なミスに気がつかないとも。
こんな話はないわ
たまたまそういう人としか仕事してないだけ

549 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 20:57:16.02 ID:uzupo3Jn0.net]
飯島 彩矢
いいじま よした

550 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:03:49.94 ID:2zbf95kya.net]
>>535
???
要求通りなんだから要求にエラーチェックが入ってたら当然実装するだろ

551 名前:デフォルトの名無しさん [2022/03/25(金) 21:21:49.50 ID:UnnJynAs0.net]
エクセルのクエリで、一つのファイルにある複数のシートから、たとえば1つ目から4つ目のデータ(1000行くらい)を1枚目を1から4、2枚目を5から8に転記していくにはどのような設定でやればいいでしょうか



552 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:22:42.56 ID:8eXyKRPB0.net]
どうしよう、>>541の言っている意味が分からない…

553 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:26:08.92 ID:4vyR1Miw0.net]
おらも分からん

554 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:26:33.02 ID:378bs0UD0.net]
>>537
まぁちっこいツールとかならそうかもね
ある程度大きくなったら後々のメンテナンスのし易さとか、テストの工数をどうやれば減らせるかとか
最初の内に構成練り込んで考えて作るから、いくらスラスラ組めてもその辺がすっぽ抜けてると
後々手を加えるごとに分岐だらけのスパゲッティコードになって行くことが多いんだよね

555 名前:デフォルトの名無しさん [2022/03/25(金) 21:28:20.55 ID:UnnJynAs0.net]
>>542
えーっとですね
例えばシート1の1から4つめにA,B,C,Dってデータがあるとします
シートの1から10まであって、
それを一つのシートの1箇所に横に並べたいんです

556 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:32:43.40 ID:378bs0UD0.net]
>>541
スピード重視でなければこの間からここで色々言われてたADO接続使ってSQLでレコードセットに値取得してそのままシートに貼り付ければいいんじゃない?

ヘッダがいるなら最初から書いとくか、レコードセットから取得するなら別ロジックが必要だけど

557 名前:デフォルトの名無しさん [2022/03/25(金) 21:34:59.71 ID:UnnJynAs0.net]
>>546
単発での処理なのであまりそういう複雑なのは難しいです

558 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:38:14.89 ID:q+5lBwTqM.net]
>>547
こんなこともわからないような馬鹿は手を出すな

559 名前:デフォルトの名無しさん [2022/03/25(金) 21:39:37.46 ID:UnnJynAs0.net]
クエリとかの簡単な操作でデータ整理できないですかね?

560 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:45:45.83 ID:378bs0UD0.net]
>>549
何だろう、クエリってSQLも立派なクエリだよ?
そっちの言ってるクエリの定義が分からない。
アクセスとかにあるあのツールっぽいのを言ってるのかな?

561 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:46:14.94 ID:8eXyKRPB0.net]
普通にマクロの記録使ってシート1の範囲をコピーして
シート2の開始地点で貼り付けたらいいだけじゃないの…



562 名前:デフォルトの名無しさん [2022/03/25(金) 21:47:30.56 ID:UnnJynAs0.net]
そうすると横にデータを並べていきたいので重複していきます
シート全体の数もそのときどきで変わるので

563 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:50:02.56 ID:378bs0UD0.net]
???
どんどん何をしたいのか分からなくなってくるね

564 名前:デフォルトの名無しさん [2022/03/25(金) 21:51:28.75 ID:UnnJynAs0.net]
>>553
簡単に言うと、複数シートにまたがる複数列の1から4列のデータを、
1枚のシートの横に縦の行を順番に並べていきたいのです

565 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:56:14.91 ID:w2X6jrV+0.net]
ズコーッ !

566 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:56:37.17 ID:378bs0UD0.net]
>>554
本当に単純にそれだけなら
2シート目の1〜4列目をコピーして
1シート目に貼り付けたあとに、
貼り付け先の列先を+4して
シート3以降、シートがある分だけそれを
繰り返せばいいんじゃないの?

567 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 21:57:03.52 ID:qxuRWoIYM.net]
ID:UnnJynAs0と一緒に仕事しなきゃいけない同僚には同情する

568 名前:デフォルトの名無しさん [2022/03/25(金) 21:58:28.35 ID:UnnJynAs0.net]
>>556
そうなると場合によっては数百のシートを手作業でコピーしなければならないので現実出来ではありません

569 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:03:32.99 ID:378bs0UD0.net]
>>558
は?
手作業ってどこから出てきたの?
そういうコードを組めばいいという話をしてるつもりだったんbだけど伝わらなかったかな?

570 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:03:48.41 ID:8eXyKRPB0.net]
手作業でコピーしなければならない んじゃなくて
ループでそれぞれのワークシートを参照 したらいいじゃん
>>556 は 「手作業で」 なんて一言も書いてないよ

571 名前:デフォルトの名無しさん [2022/03/25(金) 22:05:38.52 ID:UnnJynAs0.net]
>>560
どうすればそれができますか?



572 名前:デフォルトの名無しさん [2022/03/25(金) 22:06:11.03 ID:UnnJynAs0.net]
エクセルの方のクエリでは縦に連結されて出てきたのでやり方を教えて下さい

573 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:08:44.67 ID:378bs0UD0.net]
>>562
いや、そもそもそれだけの処理ならクエリなんて必要ないでしょ

574 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:12:12.99 ID:8eXyKRPB0.net]
>>561
Worksheets.Count でシートの数を持ってこれるから
Worksheets(n)  ※nは1始まり  でそれぞれのワークシートを参照できるから
後はループの中で >>556 の言う通り行番号を加算しながら貼り付けするなり参照貼るなりすればできるよ
俺はもうここまで伝えるので限界

575 名前:デフォルトの名無しさん [2022/03/25(金) 22:15:02.86 ID:UnnJynAs0.net]
>>563
すみません、パワークエリのことです
プログラム組んだりとかはできません

576 名前:デフォルトの名無しさん [2022/03/25(金) 22:15:06.77 ID:UnnJynAs0.net]
>>563
すみません、パワークエリのことです
プログラム組んだりとかはできません

577 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:23:46.18 ID:4vyR1Miw0.net]
>>554
もしかしてPower Queryで言うところのマージをしたいの?
複数シートに共通する、keyとなる列が1つあれば出来るけど。

578 名前:デフォルトの名無しさん [2022/03/25(金) 22:39:41.75 ID:UnnJynAs0.net]
>>567
複数シートの配列は同じで、データの内容だけがちがいます

579 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:44:11.29 ID:3hBoOPeGa.net]
>>565
来る板間違えてる

> ローカルルール
> この板はプログラムを作る人のための板です。

こっちへ行け
【Excel】Power Queryを語るスレ【Power BI】
https://mevius.5ch.net/test/read.cgi/bsoft/1571540368/

580 名前:デフォルトの名無しさん mailto:sage [2022/03/25(金) 22:44:52.03 ID:4vyR1Miw0.net]
>>568
縦軸となる共通するkey列はなに?
何の順番で行が並んでるの?

581 名前:デフォルトの名無しさん [2022/03/25(金) 22:58:31.64 ID:UnnJynAs0.net]
>>569
ありがとうございます



582 名前:デフォルトの名無しさん [2022/03/25(金) 22:58:38.87 ID:378bs0UD0.net]
なんだ、Power Queryか。
いい機会だからVBAも勉強してってくれ

583 名前:デフォルトの名無しさん [2022/03/25(金) 22:59:53.49 ID:378bs0UD0.net]
Sub hoge()
Dim targetSheet As Worksheet
Dim bottomRow As Long
Dim toPasteColumn As Long
Dim isFirstTime As Boolean

isFirstTime = True
toPasteColumn = 1

With ThisWorkbook
If .Sheets.Count = 1 Then
Exit Sub
End If

For Each targetSheet In .Worksheets
If Not isFirstTime Then
targetSheet.Activate
bottomRow = targetSheet.Cells(targetSheet.Rows.Count, 1).End(xlUp).Row
targetSheet.Range(targetSheet.Cells(1, 1), targetSheet.Cells(bottomRow, 4)).Copy _
Destination:=Sheets(1).Cells(1, toPasteColumn)
toPasteColumn = toPasteColumn + 4
End If
isFirstTime = False
Next

End With
End Sub

584 名前:デフォルトの名無しさん [2022/03/25(金) 23:02:44.53 ID:378bs0UD0.net]
うん、やっぱりインデントつぶれたね。
これで動くはずなので良ければVBEに張り付けて実施してみて。
最初のA列がキーであることが前提だけども。

585 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 00:22:2 ]
[ここ壊れてます]

586 名前:2.08 ID:wN9O5mc/0.net mailto: あれ?確かインデント用のツールを紹介してくれている親切な人いたような?
あれ具合良さそう。
[]
[ここ壊れてます]

587 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 00:30:29.64 ID:3d/IeTqK0.net]
Sub aaa()
  For bbb = 0 To 0
    If ccc = 0 Then
      ddd = eee
    End If
  Next
End Sub

588 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 01:25:30.54 ID:x5oh4kDTa.net]
ツールの利用者から、ツールの改修担当者に問合せがいったんでしょ。

改修担当といっても、前任者から引き継いだだけだから、全ての仕様はわかっていない。
現在の業務にそぐわない仕様があって、エラーが出たから、
利用者が改修担当者に問合せ。

前任者なら「もともとこういう仕様です」と答えれば、
「ああ、それなら業務が変わったから改修が必要だな」と
改修依頼を出せる。

ツールの利用者も着任して間もない人の場合、
業務が変わったのかどうかもわからない。

そういう場合、ソースコードの条件文を日本語にして
回答するのではなくて、
昔から存続しているチームの誰かに聞くのが普通。
それをしないのは職務怠慢。

自分一人で売上を引っ張ってこれていると勘違いしているのかな。

589 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 06:35:02.37 ID:4/mAEYCl0.net]
>昔から存続しているチームの誰かに聞くのが普通。
>それをしないのは職務怠慢。
つまりそれをしないで改修担当者に聞いてるやつが悪いってことだな

590 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 10:14:46.58 ID:p8/YoqyTd.net]
ここって長文で講釈を垂れる人おおいよね
しかもVBAにはまったく無関係という

591 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 12:35:46.08 ID:OVfO91qG0.net]
自力でできないのに調べない、人に聞かない、期待されているのものがつくれないのは できない人 としか言いようがない



592 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 15:44:49.86 ID:wN9O5mc/0.net]
時には長文になるのは仕方ないよ。
丁寧に説明するばそうならね?

上の方で個人名みたいの書いてるアレな人いるけど今の5ちゃんて個人名書いただけでNGじゃなかったか?

593 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 16:02:36.43 ID:1KsbV4Zma.net]
個人名NGの規制ってあるのか?
WindowsやLinux板とかでは機能していないように見えるけど

594 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 17:07:43.61 ID:kCwfN6Gy0.net]
個人名というか個人情報な
通報されたら警察来るかな

595 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 17:58:02.51 ID:wN9O5mc/0.net]
昔バイトしていた居酒屋のマスターが5ちゃんに実名晒されて誹謗中傷書かれていたのを思い出してさ。

596 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 18:09:02.02 ID:Gn2xNTk6p.net]
>>577
> 昔から存続しているチーム
そんなのは跡形もないから

597 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 20:17:20.58 ID:wN9O5mc/0.net]
職務怠慢は言い過ぎでは?
何かしらの事情あるだろうし。

598 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 23:22:10.99 ID:lmdSWMnfa.net]
dim ki as string
ki = "まあいろんな事情があるよね"
ki = ki & "チームメイトに嫌われていて聞きづらいとか"

dim shou as string
shou = ki
shou = shou & "「こんなことくらいしかわからなくて、すみません」と謝られても"
shou = shou & "お前がそんなことしかわからないことは、百も承知。"
shou = shou & "誰かに回してくれることも見込んでの質問なんだけど、"
shou = shou & "ってね。"

dim ten as string
ten = shou
ten = ten & "プログラマーは基本、自分ひとりで仕事完結して、周りに電話したりメールしたりチャットしたり、"
ten = ten & "という連携は面倒くさがる人が多いからね。"
ten = ten & "コーディングされていないことは、できませんが何か? みたいな"
ten = ten & "職務はここまで。これ以上はできませんが何か?みたいな"

dim ketu as string
ketu = ten & "ロボットみたいな人が多い。"

599 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 23:52:13.63 ID:4I5liEUu0.net]
何?
この気持ち悪いスレ・・・・・・

600 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 23:57:27.46 ID:zJILPsYJM.net]
>>587
汚いコードだな、そんな代入の仕方じゃ変数を4つ用意した意味がまったくないじゃん
そういう時は最後に足すんだよ
Dim DeathStory As String
DeathStory = ki & shou & ten & ketu

601 名前:デフォルトの名無しさん mailto:sage [2022/03/26(土) 23:58:14.85 ID:zJILPsYJM.net]
>>588
そっ閉じすりゃいいのに、そんなスレに何か書き込んでる時点で同類



602 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 03:21:42.29 ID:hNNvtCzu0.net]
深夜になると定期的に変な書き込みあるよね

603 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 03:29:36.79 ID:/OZccBd9M.net]
>>591
自己紹介かよ!

604 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 07:40:40.82 ID:BqsGdBXW0.net]
>>587
無駄に
変数 = 変数 & 文字列 をやると
その分余計にメモリを使用する。やり直し。

605 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 09:48:21.10 ID:8deA3KtJa.net]
そもそも >>587 だと
"まあいろんな事情があるよねチームメイトに嫌われていて聞きづらいとか「こんなことくらいしかわからなくて、すみません」と謝られてもお前がそんなことしかわからないことは、百も承知。誰かに回してくれることも見込んでの質問なんだけど、ってね。プログラマーは基本、自分ひとりで仕事完結して、周りに電話したりメールしたりチャットしたり、という連携は面倒くさがる人が多いからね。コーディングされていないことは、できませんが何か? みたいな職務はここまで。これ以上はできませんが何か?みたいなロボットみたいな人が多い。"
ってなるし、適宜 vbCrLf 挟めや

606 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 10:09:59.57 ID:GXS4gvi+M.net]
>>594
読んでないけど読む価値のないレスであることだけは判る

607 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 10:21:55.52 ID:dieR0oCra.net]
↑ どこを読めばいいのかもわからんアホw

608 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 10:33:27.62 ID:jqHr+5yx0.net]
最初と最後の行しか読んでないけど
スペースも改行もつかないって突っ込みだって事だけは判る

609 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 10:56:36.33 ID:hNNvtCzu0.net]
ようは字下げしないと読みにくいって教えてくれたんですね親切な人。

610 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 11:49:34.86 ID:17nxG3290.net]
>>593
そうなのか
賢くなった
でもいつものクセでSQL文はこの式で書いているわ

611 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 12:17:45.42 ID:CPBl4WFea.net]
>>597
それで十分、てか最後の行読んだらわかるだろ



612 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 12:19:46.20 ID:CPBl4WFea.net]
>>599
まあ高々数十行位なら気にすることはないよ

613 名前:デフォルトの名無しさん [2022/03/27(日) 12:41:21.31 ID:cPay0R1J0.net]
誰かSalseforceのAPIをVBAでたたく方法わかる人いませんか?
API関連に関して全く無知で、何をどうしていいのか、、、
詳しい人教えてほしいです、、

614 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 12:52:04.46 ID:dAzXJbreM.net]
字下げや改行なんてVBAでやることじゃない
印刷だろうが電子化だろうが、文書の整形は出力アプリ側に投げるもんだ
リーダー端末の画面サイズやフォントサイズなんて予測できんだろ?

615 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 13:07:11.24 ID:OVREMJced.net]
文書の整形と文書自体を一緒にしてしまうところが悲しい・・・

616 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 17:11:35.24 ID:hNNvtCzu0.net]
なんでよ?VBAの義務教育編で字下げは真っ先に学習するはずじゃ??

617 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 17:22:28.69 ID:2Abk94v90.net]
年収1000万のインド人はインデントもコメントもなし
一般人はちゃんとつけよう

618 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 17:30:10.15 ID:6akgwO9ga.net]
>>602
アクセスするライブラリとAPIリファレンスを掲示してくれたら捗るんじゃね?

619 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 17:33:41.29 ID:OVREMJced.net]
>>607
APIは変に教えるとよくないと思うから
それを使って何かするような事をしたいなら正式な仕事なりで発注させるべきだと思うぞ
そもそも何もわかってない奴がここで質問してるのもおかしな話だろ

620 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 17:34:17.13 ID:OVREMJced.net]
スクレイピングもたまに質問するやつがいるけど
それも同じな

621 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 17:50:20.50 ID:ob1ESvJwH.net]
>>609
VBA でのスクレイピングはイマイチですねえ、動いたり動かなかったりするし、なにかいい方法はないものか?

Function ScrapingAlgoA003(objIE As InternetExplorer, url, keyword As String)
objIE.navigate url
Do While objIE.Busy = True Or objIE.readyState < READYSTATE_COMPLETE
DoEvents
Loop
Dim htmlDoc As HTMLDocument
Set htmlDoc = objIE.document
Dim ReturnValue As Double
Dim div As HTMLDivElement
For Each div In htmlDoc.getElementsByClassName(keyword)
ReturnValue = CDbl(div.innerText)
ScrapingAlgoA003 = ReturnValue
Next div
Set htmlDoc = Nothing
End Function



622 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:02:58.02 ID:jqHr+5yx0.net]
>>600
そうだな
>>597>>595へのレスだ

623 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:18:00.28 ID:7EXZAGuD0.net]
>>610
VBAのスクレイピングは今だとSelenium使ったChromeのスクレイピングが主流なんじゃなかろうか
バージョン合わせるのが面倒だけど安定してるし

624 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:39:07.33 ID:2Abk94v90.net]
Seleniumはほんといいね
IEからxpathで・・・ってやってたのがほんとアホらしくなった

625 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:43:23.36 ID:U13zJWe20.net]
Seleniumは昔インストールしたんだがよくわからず
未だにIEばかり使ってるんだが もうそろそろ切り替えた方がいいのかな

626 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:51:02.70 ID:7EXZAGuD0.net]
昔のSeleniumはChromeの方にも拡張機能入れて…とかだった気がするけど今は事前準備も書くのも凄く簡単になってるね

627 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 19:59:57.15 ID:2Abk94v90.net]
>>614
100%切り替えた方が良い
ちょっと癖があるけど、cssセレクタ覚えればアホみたいに楽になるぞ
ちなみにXPathはしんどい

628 名前:デフォルトの名無しさん [2022/03/27(日) 20:17:18.33 ID:Df2KiTxu0.net]
質問です。
連想配列に格納した連想配列の値を取り出すには
どうしたらよいのでしょうか?

Dim dicA as Dictionary
Dim dicB as Dictionary

dicB.Add "a",100
dicB.Add "b",100
dicB.Add "c",100

dicA.Add "A",dicB

としたとき、dicAの中のdicB("b")の値を取得したいとき
どうしたらいいのでしょうか。

Debug.print dicA("A").("b")
とかで出せるかと思ったのですが駄目でした。

629 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 20:19:01.83 ID:uW5IEa4H0.net]
set TikuB = dickA("A")
Tikubi("b") = bibibibibi-----

630 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 20:22:07.59 ID:EN8vWua40.net]
>>610
For EachなのにIfで条件指定しないのか

631 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 20:29:11.49 ID:hNNvtCzu0.net]
乳首エロい



632 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 20:31:09.02 ID:BqsGdBXW0.net]
>>617
よく分からんのだけど、Dictionalyって
型宣言しただけで使えるの?

普通に考えると、
Set dic A = New Dictionaly
Set dic B = New Dictionaly
とか、必要そうに見えるけど。

633 名前:デフォルトの名無しさん mailto:sage [2022/03/27(日) 20:33:33.24 ID:BqsGdBXW0.net]
おっと、Dictionalyのスペルが違ってるか
Dictionaryかすまんこ

634 名前:デフォルトの名無しさん [2022/03/27(日) 20:45:16.14 ID:Df2KiTxu0.net]
元の文と違いますが解決しました。
ありがとうございました。

Sub foo()

Dim dicA As Dictionary: Set dicA = New Dictionary
Dim dicB As Dictionary: Set dicB = New Dictionary

Set dicA("A") = dicB

dicA("A")("a") = "test"

Debug.Print dicA("A")("a") 'test

End Sub

635 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 01:22:22.67 ID:LEJNBveMa.net]
("A")

636 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 02:04:12.07 ID:dJWBHkZn0.net]
(:; U: ::)

637 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 07:56:32.13 ID:bggr0gZp0.net]
Selenium Webdriver と、
Chrome の拡張機能・Selenium IDE の2種類ある

638 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 07:57:45.06 ID:W5FkPi4A0.net]
Selenium Webdriver

639 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 12:34:55.90 ID:DkLhkvc4M.net]
ウェブダイバー

640 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 13:29:17.84 ID:9Kb03WZY0.net]
ウェブダイバーはカラオケで歌うぞ

641 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 18:29:52.50 ID:jKre83rL0.net]
>>623
今更だけど
Dim dicA As New Dictuonary
みたいに普通に1命令で設定しなかったのは何故?



642 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 18:47:34.87 ID:2Ad/srHwa.net]
横からだけど
For ...
Dim D As New Dictionary
...
Next
ってやると最初の一回しかNewしないから常に
Dim D As Dictionary: Set D = New Dictionary
ってやる人はいるみたい

643 名前:デフォルトの名無しさん mailto:sage [2022/03/28(月) 18:55:38.23 ID:jKre83rL0.net]
>>631
いやいや、ループでそれぞれ別インスタンスとして使うにしても、定義は1回でNewするのが複数回で済むでしょ。
例えば上のレスのようにDictionaryにDictionaryを格納する場合でもDictionaryにしまった時点で参照は渡されるんだから消えないし、
その後、Newしてまた渡してやればインスタンスはまた別物として扱われるよね。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<282KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef