Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


251 / 3841 ページ ←次へ | 前へ→

【77434】Re:繰り返し コピーペースト
発言  YUKI  - 15/10/2(金) 8:14 -

引用なし
パスワード
   ▼β 様:
頂いたコードは希望どうりに動いております。ありがとうございます。
言葉足らずで申し訳ありません。。

説明が下手で重ね重ね申し訳ありません。


・A列へ1列コピー
・A列へ貼り付けたデータをE4:S180で関数を使って加工
・E4:S180のデータをAE列を使ってソート
・最初にA列へコピーした列と置き換え
それをAG列からBL列まで順に処理

現状は前回書いたコードを単純に必要列分表記してとても長いコードになっています。
・ツリー全体表示

【77433】Re:VBAで別ブックから反映について
発言  β  - 15/10/2(金) 0:17 -

引用なし
パスワード
   ▼馬 さん:

ブックの構成が不明ですが、
ブックA.xlsx と ブックB.xlsx があり、それとは別にマクロブックがあるというコードです。
実行時には、ブックAもブックBも、あらかじめ開かれているということが前提。
もちろん、マクロ内で、この2つのブックを自動的に開いて処理することもできますが、
まずは、あらかじめ、ひらかれているということで。

マクロブックの標準モジュールに。
★印のところは、実際のものに直してください。

Sub Test()
  Dim shA As Worksheet
  Dim shB As Worksheet
  
  Set shA = Workbooks("ブックA.xlsx").Sheets("Sheet1")  '★
  Set shB = Workbooks("ブックB.xlsx").Sheets("Sheet1")  '★
  
  With shB.Range("A2", shB.Range("A" & Rows.Count).End(xlUp)).Offset(, 5)
    .Formula = "=IFERROR(VLOOKUP(A2," & shA.Range("A1").CurrentRegion.Address(External:=True) & ",3,FALSE),"""")"
    .Value = .Value
  End With
  
End Sub
・ツリー全体表示

【77432】VBAで別ブックから反映について
質問    - 15/10/1(木) 23:03 -

引用なし
パスワード
   教えてください!

別ブックにある内容をVBAを使用し、
反映したいのですが方法が分かりません。

具体的には、
ブックAの
A列に"商品コード"、
B列に"商品名"、
C列に"備考"があります。
そしてブックBには、
A列に"商品コード"、
B列に"商品名"、
F列に"備考"、
があるので、
ブックAの商品コードにある備考(C列)を、
ブックBから同じ商品コードを探して、 そのF列に反映
していきたいのですが上手くいきません。


※ブックAはブックBを元に作成してるので、
必ず合致するコードはあります。

どなたかお助け下さい!!
・ツリー全体表示

【77431】Re:繰り返し コピーペースト
発言  β  - 15/10/1(木) 17:13 -

引用なし
パスワード
   ▼YUKI さん:

要件を読んでみましたが、どうも、よくわかりません。
なので、【動くことは動いている】という、そちらのコードを読んで
要件を推測しようとしているのですが、なかなかわかりません。

そちらのコードは

・E4:S180 の領域の各列を順番に、AE4 から列単位に転記して
・出来上がった AE列を並び替えて
・それを AG1:AG180 に転記して

・また、E4:S180 の領域(つまり、↑で対象にしたのと同じデータ)の各列を順番に、AE4 から列単位に転記して
・出来上がった AE列を並び替えて
・それを AH1:AH180 に転記

この繰り返しだと思いますが、

>AG〜BL(増減の可能性あり)の1〜180行のデータを

この AG〜BLといったものがコードに登場しないのですが??

また、コードの中で、各ブロックごとに

Range("AG1:AG180").Copy Range("A1:A180")

等としていますが、コピー先の A1:A180 は、まったく参照されていません。
何をしたかったのかなぁ・・と。

具体的には何をどうしたいのですか?
・ツリー全体表示

【77430】Re:繰り返し コピーペースト
発言  β  - 15/10/1(木) 16:33 -

引用なし
パスワード
   ▼YUKI さん:

>少し状況が変わりまして、

新しい要件は今から読んで、対応しますが、それとは別に
以前の要件通りのデータで、アップしたマクロを動かした結果はどうでしたか?
それがうまくいったかどうかの連絡をください。

(要件を変えるから、動かしてもしょうがないので動かしていない ということはないですよね)
・ツリー全体表示

【77429】Re:繰り返し コピーペースト
質問  YUKI  - 15/10/1(木) 14:12 -

引用なし
パスワード
   返信遅くなりまして申し訳ありません。

少し状況が変わりまして、
AEに纏めるデータはE4:S180へ(修正しました。)
AG〜BL(増減の可能性あり)の1〜180行のデータを
A1:180へ貼ってまとめ、元の列へ上書きとしたいです。
AE列を経由しなくても構いません
以下のコードを書きましたが、
繰り返しが上手くできず全列分このコードをVBAに書く事しかできませんでした。
現状動いてはいるのですが列の増減での修正が手間でしょうがありません。。。
よろしくお願いします


  Dim r As Range
  Dim col As Range
  Dim pos As Range
 
  Application.ScreenUpdating = False
'######AG
  Range("AE2:AE5000").Clear
  Range("AG1:AG180").Copy Range("A1:A180")
 
  Set r = Range("E4:S180")
 
  For Each col In r.Columns
    If pos Is Nothing Then
      Set pos = Range("AE4")
    End If
    pos.Resize(r.Rows.Count).Value = col.Value
    Set pos = pos.Offset(r.Rows.Count)
  Next

  Range("AE1:AE5000").Sort _
    Key1:=Range("AE1"), _
    Order1:=xlAscending, _
    Header:=xlYes, _
    Orientation:=xlTopToBottom
 
  Range("AG1:AG180").Value = Range("AE1:AE180").Value
'######AH
  Range("AE2:AE5000").Clear
  Range("AH1:AH180").Copy Range("A1:A180")
 
  Set r = Range("E4:S180")
 
  For Each col In r.Columns
    If pos Is Nothing Then
      Set pos = Range("AE4")
    End If
    pos.Resize(r.Rows.Count).Value = col.Value
    Set pos = pos.Offset(r.Rows.Count)
  Next

  Range("AE1:AE5000").Sort _
    Key1:=Range("AE1"), _
    Order1:=xlAscending, _
    Header:=xlYes, _
    Orientation:=xlTopToBottom
 
  Range("AH1:AH180").Value = Range("AE1:AE180").Value
・ツリー全体表示

【77428】Re:あるセルに手入力したら、その下のセ...
発言  β  - 15/9/30(水) 20:52 -

引用なし
パスワード
   ▼kouka さん:

ループしているというのは勘違いじゃないですか?
ループはしていないと思いますよ。ただ、思ったような結果にならないだけでは?

う〜ん・・・
コードとしては(これだけ短いこーどなのに)間違い部分が満載です。

まず、SelectionChageイベントは適切ではありません。
Changeイベントを使うべきですね。

次に、通常、イベント処理においては、動きのあったセルが、マクロで対象としているかどうかのチェックをします。
(対象外のせるなら無視)
それをしていませんね。

そもそもが、Changeイベント と 標準モジュールにわけて処理することが、めずらしいですね。
もちろん、それが妥当かつ必要なら、わけることもありますけど、今回は全く不要ですね。

最大の間違いは、この Macro1 には商品名という変数定義はありません。
モジュールの先頭に Option Explicit の記述がないと思われますが、それがないので
たまたまコンパイルエラーにはなりませんが、ここでの宣言のない変数は、テンポラリーに
生成されます。同姓同名ですけど、SelectionChangeイベントの商品名という名前の変数とは、まったく別物。
なので、これが実行されたとしても、SelectionChangeイベントでは やはり <> です。

まずはイベントを適切なもの(Changeイベント)にした上で、対象のセル(A1)の変更かd峰かを判定するのが第一歩。
次に同姓同名だけど別の変数というところをどうするか、これが第二歩。
これについては、Changeイベント内で、完結させれば解決します。

がんばってください。
壁にぶつかればSOSをどうぞ。
・ツリー全体表示

【77427】あるセルに手入力したら、その下のセルの...
質問  kouka  - 15/9/30(水) 18:31 -

引用なし
パスワード
   いろいろ試行錯誤してみたのですが、
どうにも解決策が浮かばないので、
質問させていただきます。

例えば、A1セルとA2セルが入力欄で、
A1セルを手入力した場合、A2セルの中身をクリアしたいのですが、
うまくいかないのです。

|A
――――
1|りんご
――――
2|300円



|A
――――
1|みかん←A1に入力したら
――――
2|   ←A2がクリアにしたい

・worksheetに下記のコード

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Dim 商品名 As String

  If Range("$A$1") <> 商品名 Then Call Macro1
End Sub

・標準モジュールに下記のコード

Sub Macro1()
  Range("A2").ClearContents
  商品名 = Range("$A$1")
End Sub

このままだとループしてるっぽいのですが、
どうしたら良いでしょうか??
すみませんが教えてくださいm(_ _)m
よろしくお願いします。
・ツリー全体表示

【77426】Re:オートフィルタ 繰り返し
発言  はる  - 15/9/30(水) 16:25 -

引用なし
パスワード
   すいません。自己解決しました

.Range("E3").CurrentRegion.Sort Key1:=Range("G3"), Order1:=xlDescending
悪さしてたのはSort 後の()でした。

お騒がせしました。また行き詰ったらお願いいたします。
・ツリー全体表示

【77425】Re:オートフィルタ 繰り返し
質問  はる  - 15/9/30(水) 15:22 -

引用なし
パスワード
   お礼を返したところに重ねて質問で申し訳ありません。

E3〜H*に貼り付けたデータをG列で降順にソートした後
各貼り付けへ移行したいです。
(*頂いた下記データにソートを追加したい)
.Range("E:H").PasteSpecial Paste:=xlPasteValues
の下に

.Range("E3").CurrentRegion.Sort(KEY1:=RANGE("G3"),Order1:=xlDescending)

と入力してみましたが
コンパイルエラー: 修正候補:=
で行き詰ってしまいました。
CurrentRegionでは認識しないのでしょうか・・・


>Sub test()
>  Dim aSh As Worksheet
>  Dim i  As Integer
>  
>  Set aSh = Sheets("マクロセット")
>  '#データ更新
>  With aSh
>    .Columns("E:J").Clear
>    Sheets("計画").Range("K:N").Copy
>    .Range("E:H").PasteSpecial Paste:=xlPasteValues
>    Sheets("Data Base").Range("AP4:AP100").Copy
>    .Range("J8").PasteSpecial Paste:=xlPasteValues
>    
>    .Range("E3:H3").AutoFilter
>
>    If ActiveWorkbook.Worksheets.Count < 8 Then Exit Sub
>    For i = 8 To ActiveWorkbook.Worksheets.Count
>      .Range("$E$3:$H$5000").AutoFilter _
>        Field:=4, Criteria1:=.Cells(i, 10).Value
>      .Range("E3").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy
>      Sheets(i).Range("B53").PasteSpecial Paste:=xlPasteValues
>    Next i
>  End With
>  
>End Sub
・ツリー全体表示

【77424】Re:あるファイルの中身をシートごとにわ...
お礼  カイト  - 15/9/29(火) 20:00 -

引用なし
パスワード
   こんにちは。
返信が遅くなり、申し訳ありません。
アクティブシートにしたら、問題なく動作しました。
お手数をおかけして申し訳ありませんでした。
ありがとうございました。

▼ウッシ さん:
>こんにちは
>
>マクロの設定されたブックに、シート名
>Sheet1〜Sheet7
>の7シートは存在しているのですよね?
>
>実際にテストしたコードはどうなっていますか?
・ツリー全体表示

【77423】Re:あるファイルの中身をシートごとにわ...
回答  ウッシ  - 15/9/29(火) 12:30 -

引用なし
パスワード
   こんにちは

マクロの設定されたブックに、シート名
Sheet1〜Sheet7
の7シートは存在しているのですよね?

実際にテストしたコードはどうなっていますか?
・ツリー全体表示

【77422】Re:あるファイルの中身をシートごとにわ...
発言  カイト  - 15/9/29(火) 12:20 -

引用なし
パスワード
   ありがとうございます。

t.Worksheets("Sheet" & j).Range("A5").EntireRow.Resize(Rows.Count - 5).ClearContents

こちらで、アプリケーションまたはオブジェクト定義エラーがでてしまいます。
マクロの内容は入力されたファイルが新しいエクセルファイルのシートに出力され、それがマクロを実行したエクセルにシートごとに分割して出力される作りになっているのですよね?
頭にwithをつけても駄目でした。
なぜ、マクロ実行エクセルが参照できないのでしょうか?


▼ウッシ さん:
>こんにちは
>
>こんな感じでしょうか?
>
>Sub test()
>  Dim f As Variant
>  Dim b As Workbook
>  Dim t As Workbook
>  Dim i As Long
>  Dim j As Long
>  Dim a As Areas
>  
>  f = Application.GetOpenFilename("読み込みファイル (*.*), *.*", , , , False)
>  If f = False Then Exit Sub
>  
>  Workbooks.OpenText Filename:= _
>    f, Origin:=932, _
>    StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
>    ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=True, _
>    Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array( _
>    3, 1)), TrailingMinusNumbers:=True
>    
>  Set b = ActiveWorkbook
>  Set t = ThisWorkbook
>  Set a = b.Worksheets(1).UsedRange.SpecialCells(xlCellTypeConstants).Areas
>  
>  j = 1
>  For i = 1 To a.Count
>    If a(i).Cells(1, 1) Like "No*" Then
>      If j < 7 Then
>        t.Worksheets("Sheet" & j).Range("A5").EntireRow.Resize(Rows.Count - 5).ClearContents
>        a(i).Offset(1).Copy t.Worksheets("Sheet" & j).Range("A5")
>        j = j + 1
>      ElseIf j = 7 Then
>        a(i).Offset(1).Copy t.Worksheets("Sheet" & j).Range("A" & Rows.Count).End(xlUp).Offset(1)
>        j = j + 1
>      Else
>        Exit For
>      End If
>    End If
>  Next
>  
>  b.Close False
>  
>End Sub
・ツリー全体表示

【77421】Re:あるファイルの中身をシートごとにわ...
回答  ウッシ  - 15/9/29(火) 9:05 -

引用なし
パスワード
   こんにちは

こんな感じでしょうか?

Sub test()
  Dim f As Variant
  Dim b As Workbook
  Dim t As Workbook
  Dim i As Long
  Dim j As Long
  Dim a As Areas
  
  f = Application.GetOpenFilename("読み込みファイル (*.*), *.*", , , , False)
  If f = False Then Exit Sub
  
  Workbooks.OpenText Filename:= _
    f, Origin:=932, _
    StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
    ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=True, _
    Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array( _
    3, 1)), TrailingMinusNumbers:=True
    
  Set b = ActiveWorkbook
  Set t = ThisWorkbook
  Set a = b.Worksheets(1).UsedRange.SpecialCells(xlCellTypeConstants).Areas
  
  j = 1
  For i = 1 To a.Count
    If a(i).Cells(1, 1) Like "No*" Then
      If j < 7 Then
        t.Worksheets("Sheet" & j).Range("A5").EntireRow.Resize(Rows.Count - 5).ClearContents
        a(i).Offset(1).Copy t.Worksheets("Sheet" & j).Range("A5")
        j = j + 1
      ElseIf j = 7 Then
        a(i).Offset(1).Copy t.Worksheets("Sheet" & j).Range("A" & Rows.Count).End(xlUp).Offset(1)
        j = j + 1
      Else
        Exit For
      End If
    End If
  Next
  
  b.Close False
  
End Sub
・ツリー全体表示

【77420】Re:あるファイルの中身をシートごとにわ...
発言  カイト  - 15/9/29(火) 8:41 -

引用なし
パスワード
   こんにちは。
説明がわかりにくく、申し訳ありません。
拡張子が日付時間のタイムスタンプになっています。
例 aaabbb.201509280835

NoA,NoB,Count1の転記は必要ありません。
次の行の数字の組み合わせから改行までの数字の組み合わせをシートごとに記載したいです。

▼ウッシ さん:
>こんにちは
>
>ファイル名:aaabbb.timestamp
>
>はどんなファイルですか?
>
>拡張子が「timestamp」のテキストファイルですか?
>
>NoA,NoB,Count1という部分も転記するのですか?
>
>
>▼カイト さん:
>>あるファイルの中身をシートごとにわけて入力するということを行いたいです。
>>シートごとに分けて入力する方法がわかりません。
>>,がある場合は区切って一セルごとに表示します。
>>
>>ファイル名:aaabbb.timestamp
>>
>>--------------ファイルの中身--------------
>>はじまり
>>
>>NoA,NoB,Count1
>>1010,1,360
>>432,3,254
>>・
>>・
>>2356,6,227
>>
>>
>>NoC,NoD,NoE,Count2
>>101,34,31,565
>>3432,33,5,254
>>・
>>・
>>564,4,5,462
>>
>>Next 3
>>
>>
>>NoAS,NoDS,NoFD,Count3
>>45,8,13,454
>>65,7,6,454
>>・
>>・
>>75,3,2,576
>>・
>>・
>>
>>
>>おわり
>>--------------ファイルの中身--------------
>>
>>このような形式のデータを
>>sheet1〜7までに分けて入れたいです。
>>sheetは用意してあります、データが入っています。
>>sheet1〜6はA5から最後までのデータを削除後、A5からデータを入れたいです。
>>sheet7は既に入っている最後のデータ行の次の行からデータを入れたいです。
>>
>>sheet1はNoA,NoB,Count1の次の行から改行まで
>>sheet2はNoC,NoD,NoE,Count2の次の行から改行まで
>>
>>Next 3(たまにこういういらない表記が途中にあります。はじまりとおわりもファイル内に書いてありますが、いらない表記です。)
>>
>>NoAS,NoDS,NoFD,Count3の次の行から改行まで
>>以降も似たような形式で書かれています。
>>一行の項目数は3または4となります。
>>
>>以上ですが、どなたかよろしくお願いいたします。
・ツリー全体表示

【77419】Re:あるファイルの中身をシートごとにわ...
質問  ウッシ  - 15/9/29(火) 8:08 -

引用なし
パスワード
   こんにちは

ファイル名:aaabbb.timestamp

はどんなファイルですか?

拡張子が「timestamp」のテキストファイルですか?

NoA,NoB,Count1という部分も転記するのですか?


▼カイト さん:
>あるファイルの中身をシートごとにわけて入力するということを行いたいです。
>シートごとに分けて入力する方法がわかりません。
>,がある場合は区切って一セルごとに表示します。
>
>ファイル名:aaabbb.timestamp
>
>--------------ファイルの中身--------------
>はじまり
>
>NoA,NoB,Count1
>1010,1,360
>432,3,254
>・
>・
>2356,6,227
>
>
>NoC,NoD,NoE,Count2
>101,34,31,565
>3432,33,5,254
>・
>・
>564,4,5,462
>
>Next 3
>
>
>NoAS,NoDS,NoFD,Count3
>45,8,13,454
>65,7,6,454
>・
>・
>75,3,2,576
>・
>・
>
>
>おわり
>--------------ファイルの中身--------------
>
>このような形式のデータを
>sheet1〜7までに分けて入れたいです。
>sheetは用意してあります、データが入っています。
>sheet1〜6はA5から最後までのデータを削除後、A5からデータを入れたいです。
>sheet7は既に入っている最後のデータ行の次の行からデータを入れたいです。
>
>sheet1はNoA,NoB,Count1の次の行から改行まで
>sheet2はNoC,NoD,NoE,Count2の次の行から改行まで
>
>Next 3(たまにこういういらない表記が途中にあります。はじまりとおわりもファイル内に書いてありますが、いらない表記です。)
>
>NoAS,NoDS,NoFD,Count3の次の行から改行まで
>以降も似たような形式で書かれています。
>一行の項目数は3または4となります。
>
>以上ですが、どなたかよろしくお願いいたします。
・ツリー全体表示

【77418】あるファイルの中身をシートごとにわけて...
質問  カイト  - 15/9/29(火) 0:06 -

引用なし
パスワード
   あるファイルの中身をシートごとにわけて入力するということを行いたいです。
シートごとに分けて入力する方法がわかりません。
,がある場合は区切って一セルごとに表示します。

ファイル名:aaabbb.timestamp

--------------ファイルの中身--------------
はじまり

NoA,NoB,Count1
1010,1,360
432,3,254


2356,6,227


NoC,NoD,NoE,Count2
101,34,31,565
3432,33,5,254


564,4,5,462

Next 3


NoAS,NoDS,NoFD,Count3
45,8,13,454
65,7,6,454


75,3,2,576




おわり
--------------ファイルの中身--------------

このような形式のデータを
sheet1〜7までに分けて入れたいです。
sheetは用意してあります、データが入っています。
sheet1〜6はA5から最後までのデータを削除後、A5からデータを入れたいです。
sheet7は既に入っている最後のデータ行の次の行からデータを入れたいです。

sheet1はNoA,NoB,Count1の次の行から改行まで
sheet2はNoC,NoD,NoE,Count2の次の行から改行まで

Next 3(たまにこういういらない表記が途中にあります。はじまりとおわりもファイル内に書いてありますが、いらない表記です。)

NoAS,NoDS,NoFD,Count3の次の行から改行まで
以降も似たような形式で書かれています。
一行の項目数は3または4となります。

以上ですが、どなたかよろしくお願いいたします。
・ツリー全体表示

【77417】Re:繰り返し コピーペースト
発言  β  - 15/9/25(金) 16:52 -

引用なし
パスワード
   ▼YUKI さん:

一例です。

Sub Test()
  Dim r As Range
  Dim col As Range
  Dim pos As Range
  
  Application.ScreenUpdating = False
  
  Set r = Range("F4:AB120")
  
  For Each col In r.Columns
    If pos Is Nothing Then
      Set pos = Range("Ac4")
    End If
    pos.Resize(r.Rows.Count).Value = col.Value
    Set pos = pos.Offset(r.Rows.Count)
  Next
  
End Sub
・ツリー全体表示

【77416】繰り返し コピーペースト
質問  YUKI  - 15/9/25(金) 14:44 -

引用なし
パスワード
   はじめまして、よろしくお願いします。
F〜AB列の4〜120行までのデータをAC列にまとめて表示したいです。
今までは全列コピーペーストのコードをやっていましたが
繰り返しコードで見やすく書き直したいです。

Range("F4:F120").Copy
  Range("AC65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
  Range("G4:G120").Copy
  Range("AC65536").End(xlUp).Offset(1, 0).PasteSpecial
・・・・

色々なサイトを調べて、見よう見まねで作成してみたら、
AC列も同じように横にずれていってしまいました・・・。
お手数お掛けしますがよろしくお願い致します
・ツリー全体表示

【77415】Re:データ一覧から複数条件で対象の行を...
発言  ichinose  - 15/9/24(木) 6:58 -

引用なし
パスワード
   ▼さい さん:
>VBAでデータ一覧から下記の条件で該当する人物・人物が記載されているセル(Range型)を取得したいです。
>
>表には、<No.><属性><種族><攻撃範囲><モード><名前>が記載されています。
>すべての条件を指定すればひとつの行しか出てこないという前提です。

Excelの便利な機能の一つ、オートフィルタを使うと出来そうな事象だと思います。
マクロの記録やこの質問箱でAutoFilterで検索すれば、類似質問が見つかると思います。

他にも フィルタオプションというこれまた便利な検索機能がありますから、
使い方を覚えて、それから マクロの記録やこのサイトを検索することで、
VBAコードにするにはどうすればよいか 調べることが出来ます。

www.vbalab.sakura.ne.jp/vbaqa/c-board.cgi?cmd=ntr;tree=62674;id=excel

オートフィルタでの検索例↑


>イメージ
>Dim hoge As Range
>set hoge = Activesheet.<検索条件>
>のような形
近い形で検索結果を取得できるようなインターフェースを持ったプログラムを
作れば可能です。
うまく作れば、次に作成するプログラムでも同様な検索が必要な場合、その時には
呼び出すだけで良いようになります。


>自分で探すと、No.9の「○○○○○」 セル:G12 が探せます。(画像が貼れないので申し訳ないです)

www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=73554;id=excel

データ例を↑のように掲載すれば、回答する人や後々この投稿を参考にしたい方にも
便利なスレッドになりますから、データの掲載は必要ですよ!!
・ツリー全体表示

251 / 3841 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free