問題タブ [named-ranges]
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.
excel - 名前付き範囲を削除するときの実行時エラー
名前付き範囲を削除しようとすると、「実行時エラー '1004': アプリケーション定義またはオブジェクト定義のエラー」というメッセージが表示される理由がわかりません。
.csv ファイルからデータをインポートし、範囲に「history」という名前を付けるために使用されるコードを次に示します。
「履歴」という名前の範囲を削除するために使用されるコードを次に示します。その直前の行は、名前付き範囲を見つけるのに問題なく機能することに注意してください。名前を削除しないだけです。
excel - マクロを介して名前付き範囲にチャート シリーズ ソースを設定する
既存のチャートと、そのチャートに適切なデータを供給するための適切な動的名前付き範囲を含むシートがあります。
私の問題は、シートがコピーされたテンプレートであり、コピーのチャートが名前付き範囲を指していないことです。名前付き範囲はシートにコピーされるため (範囲はシート固有です)、シリーズ ソース データを更新するだけでよいようです。古き良き記録では、手動で記録したときに次の構文が得られました。
それを修正したバージョンで名前付き範囲にリセットしようとしました:
最初のシリーズの X 値を更新しようとするステートメントで、「アプリケーション定義またはオブジェクト定義のエラー」というエラーが発生しました。
また、問題が発生した場合に備えて、PlotArea select ステートメントを追加しようとしましたが、問題は解決しませんでした。コレクションが正しく評価されるように設定されているはずのステートメントを確認しました("=='" & TempSheet.Name & "'!PDates"
たとえば、シリーズが指す必要がある「=='Risk 1'!PDates」に評価されます)。
それで、私はかなり困惑しており、誰かが提供できる助けをいただければ幸いです。前もって感謝します!
vba - Range という名前の Excel を行のコレクションに変換する
現在、Excel で動的な名前付き範囲を取り込んで 2D 配列に変換するメソッドがあります。
データに対していくつかの反復を行い、特定の列に値が含まれている場合は削除機能を実行する必要があります。転置と一時配列を使用して 2 次元配列の行を削除するためのオプションを調べました。データがかなり大きいため、行全体を簡単に削除できる他のデータ構造を調べています。
動的な名前付き範囲を vba のコレクションに変換したいと考えています。このコレクションには行番号のキーがあり、項目としてその行のすべてのデータが必要です。基本的には、2D 配列でできるようにその範囲内の各値を反復処理する機能が必要ですが、行を効率的に削除し、2D 配列を使用するより手間がかからない機能も必要です。
どうすればこれを達成できるかについて誰にも考えがありますか?
DeleteRowSub は、その行のインデックスに基づいて特定の行を削除するサブになります。私はそれから離れて、インデックスが行番号である srcCollection.Remove(index) のようなことを言うことができるようにしたい.
どんな助けでも大歓迎です。
excel - Excel数式を評価するためのxlsx4j
xlsx4j が SpreadsheetML の仕様を満たしている場合、ライブラリを使用して次のシナリオ/要件を実装できますか?
- xlsx4j は名前付き範囲を読み取ることができます
- xlsx4j は、spreadsheetML 仕様で定義されている式を評価できます
- xlsx4j は次のループを実行できます: 名前付き範囲 VAR_A (Excel の変数としましょう) を更新し、名前付き範囲 VAR_A を使用する数式セル FORM_CELL_A を評価し、FORM_CELL_A に関連付けられた名前付き範囲を読み取ります。
よろしく私
excel - VBA Excel - ある範囲名から別の範囲名にデータをコピー/貼り付けするときに、存在しない範囲名を避ける
Sheets("Omrnavne")
互いに下に複数の範囲名が書かれたシート ( ) のセルから、コードは最初に書かれた値 (範囲名) を見つけ、この名前を持つ実際の範囲を見つけて選択しSheets("Specifikationer")
、データをコピーし、次の値に移動しなければなりませんSheets("Omrnavne")
。実際の範囲を見つけ、値を貼り付けて最初からやり直してください。
問題: 範囲名Sheets("Omrnavne")
として存在しない範囲名が書かれている場合、これをスキップするにはどうすればよいですか?
次のコードIf Range(whatToFind) Is Nothing Then
を使用すると、次のエラーが表示されます。
実行時エラー '1404': オブジェクト '_Global' のメソッド 'Range' が失敗しました
存在しない範囲名を検索するとき。
私は何時間も試しましたが、成功しませんでした。助けてください - ありがとう。
コードは次のとおりです。
excel - VBA - スプレッドシートの見出し行を参照する名前付き範囲の最初のセルの場所を検索
私が持っているのは、個別の列に分割したパーツの説明です。すべての列に見出しがありますが、すべての列にすべてのパーツの情報が含まれているわけではありません。たとえば、サイズ、材料、温度が記載されている列もあれば、サイズと温度のみが記載されている列もあります。空白を無視してそれらを連結する機能があります。連結する各セルの前に、列のヘッダーを参照したい。
望ましい結果:
B6に以下を入力する場合 =ConcatenateRangeValve(G6:J6,",")
これらの結果を見たい。[ITEM]バルブ、[TYPE]ゲート、[DIM]28IN
[ ] 内の項目は行 1:1 にあり、ヘッダーを取得するために使用しているのと同じ列でその行を関数が参照するのに問題があります。必要なのは、作業中のセルがスプレッドシート全体のどこにあるかを特定することだと思います。これを行うには、C を定義し、その値を範囲内の最初のセルの列番号として設定し、ループを通過するときに 1 ずつ増やします。私はそれを働かせることができません。他のすべての部分は問題ありません。下記参照:
皆さんが提供できる助けを前もって感謝します。
vba - 名前付き範囲のサブセット内の「各セル」?
これは簡単なことだと思います。VBA で名前付き範囲をループ処理したいのですが、範囲内の最初のセルをスキップしたいです。誰でも助けることができますか?
(追伸。私は VBA の初心者であり、訓練を受けた開発者ではなく、独学です。このフォーラムは非常に役に立ちました。しかし、質問する前にこれに対する解決策を見つけようとしなかったと思うなら、あなたは間違っています。)