• 締切済み

リストボックスの項目削除

すいません、以下の処理でこまっております。 ユーザフォームですがリストボックスで項目を指定して、ダブルクリックで削除をしたいのですがうまくできません。 <例> リストボックス a b c 1.aの項目をクリックして選択する。 2.ダブルクリックするとaのみ削除 ※aをただのクリックのみなら削除できるのですが選択してダブルクリックになるとできません。 まったくできません。 どなたかご教授をお願いします。 よろしくお願いします。

みんなの回答

noname#79209
noname#79209
回答No.2

やり方はともかく、 アブナイ処理をお望みですね。 この機能によるエンドユーザーの操作とデータ管理に与える影響を もう一度よーく考えてみてください。 私には、一般人に「核ミサイル発射ボタン」を公開してしまうように思えます。

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.1

★昨日『リストボックス』というタイトルで質問した方ですね。 ・ソースを見たところ VB か VBA ですね。→カテゴリが『その他(プログラミング)』  ですので、どの言語でアドバイスして欲しいのか記述して下さいね。  あと OS とそのバージョンなどもあると助かります。 ●本題 ・『リストボックス』という GUI 部品は通知コードとしてクリック、ダブルクリックが  親ウインドウで受け取れます。このときに『ダブルクリック』された情報を読み取って  処理(削除など)を記述します。 ・VB や VBA の場合は『ListBox1_DblClick()』プロシージャ関数の内部で削除する記述を  すれば良いと思いますが…。 ・『AddItem』メソッドが追加ですので『RemoveItem』メソッドを記述すれば良いと思います。  削除するときは『ListIndex』メソッドで何番目か知ることが出来ますので、  『ListBox1.RemoveItem ListBox1.ListIndex』の1行でいいでしょう。 ・以上。おわり。→カテゴリを『Visual Basic』にした方が良いです。

関連するQ&A

  • 選択項目移動処理(リストボックス)

    表題の件で、ご質問があります。 excel2003で、VBAのユーザフォームを使っております。 リストボックスが二つあり、左の項目を選択したら右の項目にその選択した値が移動する処理をしたいのですがまったくできません。 <処理内容> ・リストボックス1の内容 りんご text メロン トマト 上記で、りんごをダブルクリックするとリストボックス1とリストボックス2の内容は以下になります。 <選択後結果> ・リストボックス1 text メロン トマト ・リストボックス2 りんご このようにダブルクリックしたらりんごは消えてリストボックス2に移動します。 また逆の処理もしたくたとえばこの状態でリストボックス2を選択したらりんごがリストボックス1に戻る。 <処理内容> ・リストボックス2 りんご ・リストボックス1 text メロン トマト リストボックス2をダブルクリックすると以下のようになります。 ・リストボックス2 ・リストボックス1 りんご text メロン トマト このようになります。 上記二点の処理がしたいと思います。 どなた様か御教授頂けないでしょうか? お手数お掛けしますが宜しくお願いします。

  • リストボックスで選択した項目を削除するには

    Excel2003を使用しています。 ユーザフォームのリストボックスには"Sheet1!A1:C10"が表示されるようになっています。 Private Sub UserForm_Initialize()  UserForm1.ListBox1.ColumnCount = 3  UserForm1.ListBox1.RowSource = "Sheet1!A1:C10" End Sub たとえばリストボックス上で3行目(A3:C3)を選択して、削除ボタンをクリックすれば選択された値が表示から消えて、セル上の値も削除されるようにしたいのです。 できれば削除されると同時に4行目(A4:C4)以降の値が上にスライドされるようにできればいいのですが、まだまだ理解できない部分が多くて自分では解決できませんでした。 ご存知の方がいらっしゃいましたらご教授頂けないでしょうか。 宜しくお願い致します。

  • リストボックス選択をテキストボックスに貼付け

    ユーザーフォーム内のリストボックス1の選択項目2つをテキストボックス1及びテキストボックス2にそれぞれ貼付ける方法(コード)がわかりません。どなたかご教授の程、よろしくお願いします。

  • リストボックスについて

    ユーザーフォームで使うリストボックスですが、項目が少ないので三角マークをなくしたいのです。 リストボックスを大きくするとなくなるみたいですが、必要以上に大きくしないとダメです。 設定できるところはあるのでしょうか? また、縦ではなく横長にリストを表示させることはできますか? オプションの、ロウソースのところで、シート!A2:A5みたいな感じでしていますが、A2:C2とかにしてもダメです・・ よろしくご教授くださいませ。

  • リストボックスについて

    VBA初心者です。 VBAで以下の処理に大変困っております。 <処理内容> 1.リストボックスにある値を選択して、OKボタンを押す。 2.「1.」で選択した値をセルA1に出力。 3.「1.」で選択する値が複数ある場合は、セルA1の値は コンマをつけて出力。 <例1> ----------------------- <リストボックス1> みかん りんご トマト aaa01 ----------------------- ・選択が一つの場合 「みかん」を選択して場合、OKボタンを押す。 セルA1への出力内容 みかん ・選択が複数の場合 「みかん」、「トマト」、「aaa01」を選択して、OKボタンを押す。 セルA1への出力内容 みかん、トマト、aaa01 ※ユーザフォームの処理です。 まったくわかりません。 明日中に仕上げなければいけないため大変困っております。 どなたか御教授をお願い致します。 宜しくお願い致します。

  • リストボックスで項目を選択し、データを削除・・・

    初心者です。 リストボックスにRowSourceを使用し、データを表示していますが、この表示されている項目を選択し、「削除ボタン」により、エクセルデータを削除し、さらにその行も削除できればと考えています。よろしければご教授お願いいたします。

  • リストボックスからユーザーフォームへのリンク方法

    ユーザーフォーム0に貼り付けてあるリストボックスに表示された項目からその項目ごとに見合った別のユーザーフォームにとびたいのですが、うまくいきません。 例えば リストボックスに 『算数 国語』 とあったとしたら算数をクリックすると算数の問題が表示されたユーザーフォームにとび、国語をクリックしたら国語の問題が表示されたユーザーフォームにとぶようにしたいです。 リストボックスの項目からユーザーフォームにとべる方法を教えてください。

  • リストボックスのリストを削除する

    リストボックスのリストを削除する アドバイスをお願いします。 下の構文でユーザーフォーム内のリストボックスに リストを表示させるようにしました。 Private Sub UserForm_Initialize()  With ListBox1 .RowSource = "データー!B3:B33" End With End Sub 表示されたリスト内で、不要になったリストをコマンドボタンの押下したときに データーシートのB3からB33の中から選択したリストと同じデーターを 探して削除する方法をお教えください。

  • リストボックスについてです。

    リストボックスについてです。 B列をダブルクリックするとリストボックスが立ち上がり、データを選択してB列に表示できるように設定されていますが、困った現象が起こっています。 例えば、sheet1のB10にダブルクリックでリストボックスを表示し、そこから「あいうえお」という名前を表示させて、sheer1編集が終わったとします。 次のsheet2でB1をダブルクリックしているのに、sheet2のB10に勝手に「あいうえお」と表示されてしまいます。 コードは以下になってます。 VBA初心者なのでエクセルのサイト等からコピペ等して作ったコードです。 どこかおかしな箇所があると思うのですが、何処がおかしいのかがわかりません。 お分かりになる方、教えていただければ助かります。 ' ◆Worksheetのコード◆ '---------------------------------------------------- '選択範囲を変更したときに実行される Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) UserForm1.ListBox1.RowSource = "データ!A1:A100"  '表示するデータ範囲 UserForm1.ListBox1.Font.Size = 12    'フォントサイズ If Target.Column = 2 Then 'B列なら 行 = Target.Row '行番号を取得する UserForm1.Show 'ユーザーフォームを表示する End If End Sub '=================================================================================== ' ◆UserForm1のコード◆ '-------------------------------------------------------------------------- Private Sub ListBox1_Click() 'クリックされたときに実行される If 行 <> 1 Then '1行目でなければ Cells(行, 2) = ListBox1.Value 'リストボックスの値をセルにセットする End If UserForm1.Hide 'ユーザーフォームを非表示にする End Sub Private Sub UserForm_Deactivate() '非アクティブになったときに実行される Unload Me 'ユーザーフォームをメモリから削除する End Sub '========================================================================================= '============================== ' ◆標準モジュールのコード◆ Option Explicit Public 行 As Variant '行番号 Sub auto_open() Load UserForm1 'ユーザーフォームをメモリに読み込む End Sub '==============================

  • リストボックス項目の順番を入れ替える方法

    リストボックス内に10個ほどの項目があります。 ある項目を選択し、ボタンAをクリックすると、その項目が1つ上に移動し、 ボタンBをクリックすると、その項目が1つ下に移動するようにしたいのです。 ウグイス ホトトギス フラミンゴ ↓ フラミンゴを選択し、ボタンAをクリックします。 ↓ ウグイス フラミンゴ ホトトギス 使用ツールはVB.NET2003です。 テキストファイルから読み込んだデータをリストボックスに入れ、順序を入れ替えてから、上書き保存しようとしております。 何か良いアイディアありましたら、是非教えてください。 どうぞよろしくお願いします。

専門家に質問してみよう