• ベストアンサー

excel VBA リストビューの行の変更

質問させていただきます。EXCEL VBAのリストビューコントロールについて、 任意の行を、違う行間に挿入みたいなことはできるのでしょうか? (例えば、5行目を1行目と2行目の間に挿入) アドバイスを宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

http://okwave.jp/qa/q6402282.html >それで話は変わってしまうのですが... 変わりすぎですよね。 だから新スレなのでしょうけど。 #せめて前スレの始末はしたほうが良かったのでは。 (普段ListViewを使わない人なので微妙な回答になるかもしれませんが) 新規挿入して元の行をRemoveするか、 Dim i As Long Dim LI As ListItem With ListView1   Set LI = .ListItems(5)   With .ListItems.Add(2, , LI.Text)     For i = 1 To LI.ListSubItems.Count       .SubItems(i) = LI.SubItems(i)     Next   End With   .ListItems.Remove 6 End With Set LI = Nothing SubItemsにソート用のインデックスを予め設定(連番付加)しておいてSortするとか。 '.SubItems(1)をソートインデックスにした場合。(Width 0 でも可) Dim i As Long: i = 2 Dim j As Long: j = 5 With ListView1   .ListItems(j).SubItems(1) = i   For i = i To j - 1     .ListItems(i).SubItems(1) = i + 1   Next   .SortKey = 1   .SortOrder = lvwAscending   .Sorted = True End With http://officetanaka.net/excel/vba/listview/index.htm

butman11
質問者

お礼

end-u様 スプレッドの頃からいろいろとアドバイス有難う御座いました。 こちらの質問攻め、話のすり代わりにも真摯にお付き合い頂き、 本当に有難う御座いました! リストビューの行の変更もアドバイス通りにやったらできました。 スプレッドも別の機会に使いたいと思います。 また何かありましたらご指導よろしくお願い致します!

関連するQ&A

  • EXCEL VBA リストビューの項目編集

    質問させさせていただきます。 EXCEL VBAで、フォーム上にEcxelシートのような表形式のコントロールを貼り付けて、編集したいと考えています。 調べたら、見た目はリストビューが良かったのですが、2列目以降が選択できないとの事なので、 他にグリッド系コントロール(無料)で良いものがあったら教えていただきたいと思います。 また、リストビューを使った場合でも、何か案があれば助言いただきたいと思います。 リストビューに期待しただけに、ショックは大きいです・・・

  • Excel2010 VBA リストビュー読めない

    開発マシンで作ったEXCEL2010のVBAファイルを ほかのアプリ用マシンで開いたとき ユーザーフォームの中にあるリストビューだけ欠落してしまう 最初、開発マシンは2007だったのでバージョンの違いかと思って質問し下記サイトをアドバイスされたが、関係なかった http://support.microsoft.com/kb/2266789/ja 開発マシンとユーザーマシンのバージョンをすべて2010Plusに新規インストールしたが状況は変わらない  開発マシンのOSは WinXP、   アプリ用マシンのOSは WinServer2008R2(仮想サーバーとして使っている) 同じ環境の中でリストビューをつくって保存したものはちゃんと機能します 逆の方向、アプリ用マシン(2008R2)の中で作って保存したファイルを 開発用(XP)マシンの中で貼り付け開くとちゃんと機能します 今は アプリ用マシンの中で、もう一度、ユーザーフォームの中に手でリストビューコントロールを書き込んで動作させている リストビューコントロールは、Exel VBAにデフォルトで入っているActiveXコントロールではないので、忘れられているのでしょうかね 他のマシンで作ったリストビューを強制的に読み込む手段がないでしょうか 他に何か良い解決方法がありましたらお教えください

  • EXCELのリストボックスを選択した行が何行目か

    エクセルVBAの初心者です。 VBAを組んでいて表のデーターをリストボックスに表示しています 選択されたリストボックスの値はわかるのですが、リストボックスの上から 何行目を選択したかどうか知りたいのですが、わかる方がおられましたら よろしくお願いします。

  • エクセルの行挿入を楽にするには?マクロ?

    エクセルで、1000行近くのデータの各行間に、4列ずつ行挿入しています。 手作業のため時間がかかってしまいます。(4000行!) この作業をマクロ化できませんか? できれば、あける行間数も、4行以外の任意の数に指定できると更に助かります。

  • Excelで行の追加に関して・・・

    お世話になります Excelにて表を作成して全体の行間を整えてから 更に追加にて行をいくつか追加したいのですが 左行タブ-全体から右クリックして挿入を押していますが これだと同じ幅の行は確かに追加されるのですがこれを複数行20-50とまとめて 調整された行間でのまとめ挿入は出来ないのでしょうか? なんとも説明が上手くないのですが伝わりますでしょうか?

  • EXCEL(VBA)で1行おきに行を選択する方法

    こんにちは。VBAは苦手なので教えてください。 EXCELのsheet1にあるリストに、下記マクロで1行おきに 空白行を挿入しました。 Sub test1() '隔行で空白行を挿入 Dim rw As Long 'セル For rw = Range("A1").End(xlDown).Row To 2 Step -1 Rows(rw).Insert Next End Sub 同じファイルのSheet2の1行目<Rows("1:1")>に、計算式が入力されています。 マクロで挿入した空白行全てを選択し、そこへSheet2の1行目のコピーを 貼り付けたいです。 ぜひ、良い方法を教えてください。

  • エクセルVBAのリストボックスについて

    こんにちわ! エクセルVBAのリストボックスの質問です。 現在、エクセル上では時刻データフォーマットが日付データになっているのですが、リストボックスに表示させると数値データになってしまいます。 具体的には エクセル上⇒11:00 リストボックス上⇒0.45833… となってしまいます。 どうしたら直るのでしょうか? アドバイスの程よろしくお願いいたします。 ちなみにエクセル2003での事象です。

  • EXCEL VBA テキストボックスを見やすくしたい

    いつもお世話になっております。 EXCEL VBA のユーザーフォーム上の テキストボックスについて教えて下さい。 大きめのテキストボックスを作り 改行を許可して、数十文字を表示させることができたのですが、行と行の間が詰まりすぎていて、見づらいのです。 行間を空ける方法を教えて下さい。

  • 空のリストビューで1行おきに背景色を変える

    リストビューで1行おきに背景色を変えたくて、 http://homepage3.nifty.com/mitui707/VisualC/VClistview_color.html/ を参考にさせて貰らい、データを次々に追加していくと、サンプル通りに5行目の背景色と文字色は変わりました。 が、起動時の何もデータが無い状態の空のリストビューで1行おきに背景色を変えたいのです。 色々と試してますが、まだ初心者のため間違っているのかうまくいきません。 どなたか助言をお願いします。 VC++6.0を使用しています。

  • エクセルVBA リストビュー選択項目を別フォームへ

    皆さんこんにちは。 エクセル2013使用のVBA初心者です。 エクセルVBAのリストビューについて教えてください。 Userform1上にListview1とコマンドボタン1があります。 Listview1はSheet1を呼び込んだものが反映されており 左から駅名・顧客名・店舗名が記載されています。 Listview1でどれかを選択してコマンドボタン1を押したら Listview1で選択した項目の 駅名をUserform2のTextbox1に 顧客名を〃のTextbox2に 店舗名を〃のTextbox3に反映したいのですが リストビューの情報がネット上にも少なく コードをどのように書いたら良いか見当がつきません。 Userform2のPrivate Sub UserForm_Initialize()に TextBox1 = UserForm1.ListView1.FocusedItem.SubItems(0).Text を記載してみたものの、コンパイルエラーが出てしまいます。 (スイマセン、あまり意味が分かっていないで書きました) リストビューで選択した項目を別のユーザーフォームに 反映させるにはどうしたら良いでしょうか? どなたかヒントをいただけると助かります。

専門家に質問してみよう