No.1
- 回答日時:
No.2
- 回答日時:
エラーが出るそのコードが知りたいですが。
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/v …
最初の方のコード
If Not myDic.exists(Cells(i, 1).Value) Then
『もしkeyが既に存在してなければ
が良く使ってます。
Not を消せば
『もしkeyが存在していれば』になりますね。
No.3
- 回答日時:
No.2です。
老眼です。
http://officetanaka.net/excel/vba/function/Join. …
http://officetanaka.net/excel/vba/function/instr …
1次元配列なら
joinで1行の文字列にしinstrで存在しているならどこにあるかを調べる。
存在してなければ0になる。
if instr(join(配列変数, "_"), "調べたい値")>0 then
'存在する時
else
'存在しない時
end if
No.4
- 回答日時:
こんばんは
>dictionary を使用する目的が良く分かりませんが
配列を作るのにdictionaryを使用すると言う事でしょうか?
重複データを除く為にはよく使われますが、入れると言う事であれば、
違う方法が良いのではないかと思います
itemに添え字を付けるとかも出来るとは思いますが。。
既に配列が有ってその中には重複データも含まれている内容を調べる場合
調べる内容にもよりますが、べたに考えると配列内をループで探せばよいですね
参考コード
Dim i, j, ary
ary = Range("A1:F10")
For i = LBound(ary, 1) To UBound(ary, 1)
For j = LBound(ary, 2) To UBound(ary, 2)
If ary(i, j) = "keyword" Then Debug.Print ary(i, j); " = 行 :"; i; " 列 :"; j
Next
Next
aryは2次元配列
A1:F10範囲内のキーワードを探して 行№と列№を出力します
探す方法は調べる内容にもよりますが、色々あると思いますので参考サイト
https://www.sejuku.net/blog/70270
No.5
- 回答日時:
#4
なるほど・・
何をされたいか良く分からないのですが・・ごめんなさい
If Not Dic.exists(Cells(i, 1).Value) Then
Dic.Add ary(i, 1).Value, ary(i, 2).Value
Else
Dic.Add ary(i, 1).Value & "|" & n, ary(i, 2).Value
n = n + 1
End If
keyに添え字付加?後でSplit出来るように"|" とか?
取り出す処理負荷どうかな・・・少し乱暴?
No.7ベストアンサー
- 回答日時:
Dictionaryは重複データは入れられないけど
使い道、取り出す時どうするのかな・・?
添え字を後から削除する必要が無ければ
If Not map.Exists(ary(i)) Then
Call map.Add(ary(i), CStr(i))
Else
Call map.Add(ary(i) & "|" & n, CStr(i))
n = n + 1
End If
必要があれば出力時、instr ・・Split などで
もし、重複データは不要なら #2様が回答されている通り
If Not map.Exists(ary(i)) Then Call map.Add(ary(i), CStr(i))
で良いと思いますよ
No.8
- 回答日時:
配列の何番目って提示しているサイトにヒントが
For k = 0 To 10000 ' To map.Count - 1
If ("8" = ary(k)) Then
'// この時点の変数kの値が検索文字列がある配列の位置になる
Exit For
End If
Next
記載されていますよ。
No.9
- 回答日時:
あとは
[VBA]ArrayListの使い方を知れば動的配列も解決!
https://y-moride.com/vba/arraylist-how-to-use.ht …
こちらを使うか。
ただwin10と相性が悪い場合もあるような記事も見かけたので、
他だとDicを2つ使うか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
高校生はアルバイトするべきだろうか?賛成だったら「賛」、否定だったら「否」を文頭においてあなたの意見を教えてください。
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
array関数で格納した配列の型を変更する
Visual Basic(VBA)
-
-
4
エクセルVBA マクロ処理中のポップアップメッセージについて
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル タブの下のメニューを...
-
Web画面の文字をVB6で取得したい
-
Outlookの「受信日時」「件名」...
-
ExcelVBA シート名を複数セルか...
-
VBA 入力箇所指定方法
-
Excel VBA 定義されたプロージ...
-
VBA 別ブックからコピペしたい...
-
エクセルのマクロついて教えて...
-
VBA ユーザーフォーム ボタンク...
-
【ExcelVBA】インデックスが有...
-
配列のペースト出力結果の書式...
-
VBA実行後に元のセルに戻りたい
-
エクセルのマクロについて教え...
-
VBA 別ブックから条件に合うも...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
IF文、条件分岐の整理方法
-
VBA listBoxから
-
VBAの質問になります 行の非表示
-
【VBA】カーソルのある行の1行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
配列の要素番号を取得するには?
-
変な質問ですみません、n番目の...
-
VB.NET の配列の要素数
-
DataGridでCTRLキーを押さずに...
-
IDの自動採番について
-
VB6 複数行のテキストをリスト...
-
Vba 配列の中の特定文字列の位...
-
[Objective-c]多次元配列のアク...
-
重複しない乱数整数を発生させる。
-
VBでボタンを押すと画像をラン...
-
ヒープソートの問題について
-
重複しない乱数を作り配列に入...
-
ランダムに数字を並び変える方法は
-
重複しない乱数の生成
-
画像を横に無限スクロールする件で
-
ActionScriptで配列をクリアす...
-
構造体配列のサイズ
-
簡単な当たり判定作りたい
-
複数の異なる結果を表示するラ...
-
FLASHでXMLを読み込んだときに...
おすすめ情報
しかしそうすると処理が遅いのが欠点ですよね?
しかし要素の字数が2文字以上だと有効では無いですよね?
https://vbabeginner.net/convert-array-to-associa … このサイトのような事をしたいです。
特定の文字列が配列の何番目の位置にあるかを知りたいのです。
しかしそれだと、dictionaryを利用する方法より処理が遅いです。