問題タブ [listobject]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
11361 参照

vba - VBA - 一連のワークシートですべての ListObject をループする

テーブルの条件付き書式設定マクロ (Jeeped に感謝) があり、これを拡張して、さまざまなワークシートのすべてのテーブルをループ処理したいと考えています。これは最も効率的なアプローチではないと思いますが、一緒に石畳にできる最善の方法であり、それでも機能していません。これまでのところ、私は以下の2点で立ち往生しています。どんな支援も大歓迎です!

1) ws を複数のワークシート コードネームに等しく設定する (例: Set ws = Worksheets(5,6,7))

2) 実行時エラーなしで範囲を設定すると、Set myRange = ws.ListObjects.DataBodyRange「実行時エラー '438': オブジェクトはこのプロパティまたはメソッドをサポートしていません」が生成されます。

現在のコードは次のとおりです。

0 投票する
1 に答える
238 参照

vba - byref を使用した型の不一致

次のコードは、コンパイル時エラー メッセージ「型の不一致」を作成します。

また試しました:

また:

この JustAdd サブルーチンを機能させるには、正しい方向にすばやく微調整する必要があります

0 投票する
1 に答える
1292 参照

excel - ListRows.Add() は、リストがフィルター処理されるとエラーになります

Worksheet_Change イベントから呼び出される次のコード (Excel 2007 以降の場合) があります。

基本的に、ユーザーが Excel テーブルで特定の変更を行うと、現在の行の下に新しい行が作成され、データのコピーが作成され、2 つの ID フィールドが両方の行を相互参照するため、それらが関連していることがわかります。

これは正常に動作しますが、リストがフィルター処理されてイベントが発生すると、ListRows.Add で次のエラーが発生します。

Run-time error 1004: cannot shift cells in a filtered range or table

エラーを理解しました。最初にフィルターを削除して回避できると思います。しかし、それはユーザーにとって失礼であり、後でフィルターをやり直すことを強制します (これは複雑になる可能性があります)。

この問題に対するエレガントな解決策は何でしょうか? どうにかして新しい行を作成し、フィルターを保持する (または自動的に元に戻す) ことはできますか?

0 投票する
1 に答える
2930 参照

vba - 列Bのパラメータを使用してListObject VBAの列Aの行をソートする方法

データベースから Listobject マクロを介して入力された Excel のテーブルがあります。

次のコードを使用してテーブルを並べ替えることができます。

「ステータス」には、1から100の範囲の複数の整数値があります。私がしたいのは、ステータスと別の列に基づいて行をソートすることです。私が遭遇する問題は、並べ替える「2番目の列」がステータスごとに異なることです。

私が作成したいのは、さまざまな日付列がステータスごとに降順でソートされる「ガント」のようなテーブルです。例: (DD-MM-YYYY)

など これは可能ですか?

0 投票する
2 に答える
1423 参照

vba - Excel 2010、VBA、および ListObjects の小計がテーブルの変更で更新されない

したがって、この構造を持つ (A1 から開始 - スニペットを表示 > 実行):

ListObject でその範囲 (A1:D6) を変換するコードをスクリプト化し、4 つの新しい列と小計を追加しました。

ここで、新しい列の任意のセルに移動していくつかの数字を書き込むと、TOTAL (小計) が更新されないという奇妙なことがあります。ただし、ファイルを保存して再度開くと機能し、合計が更新されます。私は何が欠けていますか?

TotalCalculation の後に ShowTotals を移動しようとしましたが、動作は同じままです。

シートをゼロから再構築し、前のコードでスタイルを適用した後に、列 b、c、および d の小計にこのコードを追加するとします。

b、c、d の小計は機能していますが、Tot1、Tot2 などは機能していないことに気付きました。

唯一の回避策は、それを作成するための参照を使用して ListObject を追加する前に、生のテーブルを作成することです。誰もがより良い解決策を知っていますか?

前もって感謝します :)

0 投票する
1 に答える
1452 参照

arrays - テーブルの列をループし、配列変数に最大値または最小値を格納します

VBA を使用して Excel のテーブルをループ処理し、各列の最大値を配列変数に格納して、後でプログラムで使用できるようにしようとしています。

以下のコード スニペットに似た多くのアプローチを試みましたが、成功しませんでした。参考までに:mainTableは、スクリプトで以前に定義された Public ListObject 変数であり、同じく以前に定義された Public mainColsLong 変数であり、次の幅を格納しますmainTable:

上記のコードはエラーなしで実行されますが、常に戻ります0

ユーザーがさまざまな次元のデータセットをコピーして貼り付け、エラーなしでスクリプトを実行できるように、列/テーブルの場所をハードコーディングしないことが重要です。また、ユーザーが必要な列ヘッダーを持つデータセットでこれを実行できると仮定します。