問題タブ [excel-2007]
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-formula - Excelの2番目の列に基づいてサブリストを作成する
2つの列があり、最初の列にはオブジェクトの名前があり、2番目の列にはオブジェクトが属します。一人一人に割り当てたものを記載した新しいシートが欲しいです。ここに例があります:
つまり、フレッドには犬、猫、鳥がいます。スコットにはベルがあります。そして、誰も彼らのページに笛を持っていません。簡単なIF()を実行すると、Fredのページでは次のようになります。
そしてスコットのページは次のようになります
しかし、私はフレッドを次のように見せたい
とスコットは同じです。
私の現在の考え方は=VLOOKUP($C$1,Items!A2:C1000,3)
、データがどの行にあるかを示すためにDの非表示列で使用することです(ここで、アイテムの列Cは行番号の非表示列であり、C1は検索パラメーター(SまたはF))=IFERROR(CELL("contents",INDIRECT(ADDRESS($D2,2,1,TRUE,"Items"))),"")
、しかし、検索配列の行インデックスを1+最後に見つかったアイテムに変更する以外は(方法がわかりません)、次のアイテムの検索を続行する方法がわかりません。私はC++とC#を知っていますが、これまでVBAでコーディングしたことがなく、MSDNに大きく依存しており、ExcelAPI専用のMSDNセクションはありません。
c# - C#を使用してExcelチャートの行/列を切り替える方法は?
チャートの系列名を情報の列名として表示したい。これは、複数の列がある場合に機能しますが、情報が1列しかない場合、シリーズ名を番号1に設定しているようです.
これを Excel で手動で再現したところ、列名がグラフの名前であると想定されているようです。それを回避する方法は、「データの選択」オプションに入り、「行/列の切り替え」オプションを選択するようです。
したがって、私の質問は、C# を使用してこのオプションを複製するにはどうすればよいですか?
sql - Excel のデータをデータベースと結合する
これはおそらく簡単な質問ですが、Excel で何をしているのか本当にわからないので、誰かが助けてくれることを願っています。
私のタスクに関連する 2 つの列を含む Excel スプレッドシートが与えられました。1列目は「外部ID」、2列目は「内部ID」です。内部 ID をキーとしてデータベースから (さまざまな結合を使用して) 一連のデータを選択する必要がありますが、このデータはすべて外部 ID にリンクする必要があり、内部/外部間の唯一のリンクは次のとおりです。このスプレッドシート。
たとえば、スプレッドシートの行が次のようになっているとします。
データベース内の ID #2 のアイテムに関連するすべてのデータを選択する必要がありますが、データベースから "AB1234" を取得する方法がないため、スプレッドシートを使用してこのデータを "AB1234" に関連付ける必要があります。
これを達成する最も簡単な方法は何ですか? Excel のバージョンは Excel 2007 で、データベースは Oracle です (該当する場合)。
私は本番データベースへの読み取り権限しか持っていないので、テーブルを作成し、スプレッドシート データをインポートして結合することはできません。
vba - VBAを使用して新しいインスタンスでExcel 2007を開く際の問題(OLEおよびバインドされたオブジェクトフレームを使用)
VBA (Access 2002 から) を使用して Excel 2007 の新しいインスタンスを作成する際に問題があります。
最初は問題を誤解していて、思ったよりも複雑です。
新しいプロセスを作成します (そうではないと思っていました) が、それでも奇妙なことが起こっています。OLE を使用して Excel ファイルを SQL Server データベースに保存しています。
これは、Excel ファイルをフォームにバインドする関数です。
コンテキスト:
ad 1 2 番目のプロセスの excel.exe が開始します
広告 2 2番目のプロセスで何が起こっているかを確認するために、この行を追加しました
広告 3 OLE はファイルを既存の Excel インスタンスにバインドし、2 番目のプロセスはここで強制終了されます:/
問題は次のとおりです。
tExcelObjFrame.Action = acOLEActivate が 2 番目のプロセスを強制終了する理由
2番目のプロセスでオブジェクトフレームにExcelファイルを強制的にアクティブにする方法
編集
ここで部分的な説明を見つけました(明確な解決策はありません):
http://www.xtremebbtalk.com/showthread.php?t=292170
- Excel のインスタンスが実行されていない場合、オブジェクトに直接またはプログラムを通じてアクセスすると、OLE によって Excel のインスタンスが作成されます。
- Excel のインスタンスが既に実行されている場合、これは OLE オブジェクトによって使用されるインスタンスです。
問題は、OLE オブジェクトが間違った Excel インスタンスを選択することです。問題は、OLE を特定のインスタンスに向ける方法があるかどうかです。
ここで説明されている同じ問題(解決策はありません):
com - Windows Server 2008 x64 上の Excel 2007 自動化
Microsoft サポート ベースの記事で、オフィス製品の UI レスの自動化はサポートされていないと述べていることはよく知っています。Windows Server 2008 x64 および Excel 2007は、指定されたステートメントを強制しているようです。
NT サービス (ローカル システム アカウント) の OnStart メソッドで次のコードを実行しています。コンソール アプリケーションで同じコードを実行すると、Excel が自動化されるだけです。
提供されたコードには 2 つの部分があります。最初の部分では、Excel を起動し、新しいワーク ブックを作成して、指定されたファイル名に保存します。2 番目の部分は、Excel の新しいインスタンスを起動し、指定されたファイルを開きます。オープン操作は、次の例外で終了します。
サービスを開始できません。System.Runtime.InteropServices.COMException (0x800A03EC): Microsoft Office Excel はファイル 'c:\temp\test.xls' にアクセスできません。いくつかの理由が考えられます。
• ファイル名またはパスが存在しません。? ファイルが別のプログラムによって使用されています。? 保存しようとしているブックは、現在開いているブックと同じ名前です。
自動化された Excel を起動してファイルをディスクに書き込むことができたのに、既存のファイルを開くように "ただ" 要求されたときに失敗したのはなぜですか?
excel-2007 - 日付をテキストとして連結
私は次の式を試みています:
=concatenate(A1, " ", B1, " - ", C1)
列 A はテキスト、B と C は日付です。concatenate 関数は、テキスト値ではなく、日付の数値を返します。これを修正するにはどうすればよいですか?
excel - コードの変更を Excel VBA アドインに保存するにはどうすればよいですか?
VBA で Excel 用のアドインを作成しました。コードを変更する必要がありますが、ファイルが保存されません。.xlam ファイルを開き、変更を行い、ctrl-S を押して保存し、エラーがポップアップしないようにして閉じます。しかし、再開すると、行った変更は何もありません。何を与える?アドインを保存して変更を有効にする特別な方法はありますか?
vba - Double 型には追加できません
次のスニペットを使用して、増加させたい double 値があります。
コードが指しているセルに 10 進数値が含まれている場合でも、コードは型の不一致エラーを継続的に返します。私は何を間違っていますか?
vba - モーダル UserForms を処理するには?
ShowModal が True に設定された UserForm があります。ダイアログをフォームおよび進行状況バーとして使用したいので、ユーザーが [OK] をクリックした後、フォームは画面上に残りますが、コードはバックグラウンドで実行し続ける必要があります。これを行う最善の方法は何ですか?
現在、ユーザーがデータを入力するフォームと、進行状況バーを含むフォームの 2 つのフォームがあります。簡単にするために、これらを1つのフォームにマージしたいと思います