2016-11-26 9 views
0

Microsoft VBAからこのコードを貼り付けています。ListObjectsがオフィスで認識されていません2010

https://msdn.microsoft.com/en-us/library/office/hh273483%28v=office.14%29.aspx

Set lo = ListObjects.Add(_ 
SourceType:=xlSrcRange, _ 
Source:=Range("A1:F13"), _ 
XlListObjectHasHeaders:=xlYes) 
lo.Name = "SampleData" 

私はテーブルのスタイルを学びたいです。 VBAはListObjects変数が見つからないことを示します。

私は2010を使用しています。貼り付けをコピーしても機能しないのはなぜですか?

助けていただければ幸いです。

多くのおかげ

+0

tbl.Cell(1,1).SetWidth ColumnWidth:= 60、RulerStyle:= wdAdjustNoneこれも機能しません。 setwidthが見つかりません。なぜ私が望むものを見つけることができないのですか? – Albert

答えて

1

あなたが標準モジュールでコーディングされている場合は、インスタンスのように、明示的にWorksheetオブジェクトを修飾する必要があります。

Set lo = ActiveSheet.ListObjects.Add(_ 
SourceType:=xlSrcRange, _ 
Source:=Range("A1:F13"), _ 
XlListObjectHasHeaders:=xlYes) 

いますが、Worksheets("MySheetName")

のようなものは何でも有効な Worksheetリファレンスを使用することができます
+0

@JohnColeman私は答えを書く前にExcel 2010でテストしました。明示的なワークシート参照なしでは、私は1) "変数が定義されていない"コンパイルエラーが 'ListObjects'を強調表示する2)イミディエイトウィンドウで' ListObjects.Count'を入力するときに "Object Required"ランタイムエラー424 3)両方のエラーが明示的ワークシート参照。 OPのリンクがVBAを参照しているのは間違いありませんが、私はVB.Netに通常関連付けられているコードペインの** VB **タグに誤解されました。とにかく私が提供したリンクは、明示的なワークシート参照を示していますが、強制的なことは何も言いません。 – user3598756

+0

@ジョンコールマン、下の票を残す:元の答えはより正確でなければならない – user3598756

+0

しかし、編集された答えは良いですし、おそらくOPを助けるでしょう。回答のダウンボートは懲罰的ではありませんが、代わりにあなたの答えで起こったように、必要な改善を引き起こすはずです。 –

関連する問題