2011-12-31 5 views
3

私は父のVBAの仕事のコードを見ています。彼はプロではなく、どちらも私ではありません。問題があり、私たちはそれを理解できません。それを理解するには、ListViewViewプロポーティについて知っておく必要があります。 ViewプロパティにはlvwReportが割り当てられていますが、Googleで確認していますが、定義がないか、それを見つけることができません。マイクロソフトのリソースのいずれにも言及していないので、私は驚いています。VBAのlvwReportとは何ですか?

これは正確に何であるか教えてくれる人がいますか?ここで

はコードで、私の知る限りlvwReportと呼ばれる他の変数何もありません:

Private Sub UserForm_Initialize() 
    ListView1.View = lvwReport 
    ListView1.Gridlines = True 
    ListView1.FullRowSelect = True 
    ListView1.ListItems.Clear 
    ListView1.ColumnHeaders.Clear 

    With ListView1.ColumnHeaders 
     .Add , , "MY COLUMN 1", 35 
     .Add , , "MY COLUMN 2", 30 
     .Add , , "MY COLUMN 3", 35 
    End With 

    For a = 2 To Cells(65000, 1).End(xlUp).Row 
     ListView1.ListItems.Add , , Cells(a, "A").Value 
     y = ListView1.ListItems.Count 
     ListView1.ListItems(y).ListSubItems.Add , , Cells(a, "B").Value 
     ListView1.ListItems(y).ListSubItems.Add , , Cells(a, "C").Value 
     ListView1.ListItems(y).ListSubItems.Add , , Cells(a, "D").Value 
    Next 
End Sub 

EDIT /注:これは、「マイクロソフトのListViewコントロール6.0(SP6)と呼ばれるLIBから何かあります"、私はそれを追加し、問題は解決しました。しかし、私はこれが何であるか分かりません。

+3

ListViewはVBAにネイティブではありません。 VB6がインストールされている必要があります。 VB EditorからToolsを選択した場合、「Additional Controls」はグレー表示されます。 VB6がインストールされている場合、「追加コントロール」が利用可能であり、Microsoft ListViewを選択できるようになります。 ListViewには、アイコン、スモールアイコン、リスト、およびレポートのような多数の代替ビューがあります。 'lvwReport'は、レポートビューを選択します。 ListViewを記述しているサイトについては、「ListView VB」または「ListView VB6」を検索してみてください。 –

+0

ありがとう、私はそれを確認するつもりだ –

+2

トニー、私は答えとしてこれを投稿することをお勧めします。 –

答えて

6

ListViewはVBAにネイティブではありません。 VB6がインストールされている必要があります。 VB EditorからToolsを選択した場合、「Additional Controls」はグレー表示されます。 VB6がインストールされている場合、「追加コントロール」が利用可能であり、Microsoft ListViewを選択できるようになります。

リストビューには、アイコン、スモールアイコン、リスト、およびレポートのような多くの代替表示があります。 Windowsエクスプローラの表示オプションを使用してプレイすると、これらの選択肢が表示されます。 lvwReportは、レポートビューを選択します。

ListViewを記述するサイトでは、「ListView VB」または「ListView VB6」を使用してください。

Visual Basic 2010 Expressをダウンロードすることもできます。これは、Visual Studio/.NET開発環境の一部です。 VBA構文からVB 2010構文への学習曲線は小さくなります。 VB 2010には、ListViewが1つある何千もの追加機能が付属しています。 ListViewはVB 2010のネイティブなので、適切に文書化されています。 VB 2010はVBAと比較して驚くほど高速です。 .NETソフトウェアのExpressバージョンはすべて無料です。彼らは一人のユーザーかもしれませんが、訓練や初期開発には十分すぎます。あなたが準備ができているときだけ、あなたは完全なバージョンにアップグレードするために支払う必要があります。最大の欠点は、私の見解では、非常に多くの機能があるので、あなたが望むものを見つけるのは難しいということです。

+0

どのようなシナリオでVB.NetがVBAよりもExcelで高速に見つかりますか?すべてのシナリオで、私は今までにInteropのオーバーヘッドのために非常に遅くテストしました。 –

+0

おそらく、「VB 2010はVBAと比較して驚異的に速くなっています。私は処理速度を考えていました。私の最後の雇用主には、Excel VBAで処理されていたデータがたくさんありました。 VB 2010で処理しているデータを読み込んで結果をコピーすることで、実行時間を数時間から数分に短縮することができました。正直言って彼らはExcelで不適切なことをしていました。しかし、スタッフはExcelとVBAを知っていて、変更したくなかった。 VB 2010は、彼らが喜んで取っていた小さなステップのようでした。 –

+0

すべての比較で私はVB.NEtにデータを読み込んでVB.NETに結果をコピーしていますが、VBAに比べて驚くほど驚くほどです。 http://fastexcel.wordpress.com/2011/07/07/excel-udf-technology-choices-snakes-ladders-with-vba-vb6-net-c-com-xll-interop/あなたが効率的に書いたような音VB.NETコードと非常に非効率なVBAコード –

関連する問題