システムwiki

Office:ボタンを押して複数の機能を複数の行に変更する

RoyBogn 解決済 最終更新日:2020-08-19 20:46

こんにちは、

ユーザーが押したときにマクロが適用されるような形状を作成したい.

マクロは、すでに構築されている4つの関数を変更し、この関数をtableの複数の行に適用する必要があります.

基本的に、関数の「変更」はほんの小さな変更です.(他のセルを参照)

このように4つのトリガーが必要です.

レコードマクロを使用しようとしましたが、成功しませんでした.多くのエラーにより、

Excel/Windows 10/office 365 for businessから移動

返信リスト(回答:11)

1 #
Andreas
そのようなシナリオを再現するのはあまりにも複雑すぎる.そしてそれがあなたのものと一致しないならば、私たちの解決策はあなたのために機能しません..
最良のファイルのコピーを作成し、必要なデータを匿名化します.このためにこのファイルをダウンロードしてください リンク:MODAnonyzize.
Excelファイルを開く
シートを右クリックします.VBAエディタ
機密データでセルを選択するあなたの選択のファイルホスター)そしてここでダウンロードリンクを投稿してください.
リンク:シェアー OneDrive-files-and-folder-9fcc2f7d-de0c-4cec-93b0-A82024800C07
それからファイルを見ることができ、解決策を見つけることができます.ご理解ありがとうございました.
Andreas.
2 #
DihaoGu

こんにちは、ロイ

説明から、Excelワークブックのマクロボタンを使用して、異なる行の関数を置き換えたいと思われます.

私の研究に基づくと、この目的はExcelのVBAコードで実行できます.以下は、サードパーティのウェブサイトからの類似のサードパーティであり、達成しようとしていることに基づいていくつかのアイデアを提供します.

の数式を置き換えるVBAのセル

数式セルでRange.Replaceを使用する

数式の一部を置き換え、Excel VBAを使用してそれを変更する方法

免責事項:
マイクロソフトは、黙示またはそれ以外の保証および/または保証を提供するものではなく、第三者のリンク先サイトから受け取る情報またはテクノロジに関連するサポートについて責任を負いません.

3 #
RoyBogn

HI、

返信のための皆さん.

私のニーズの説明を持つ私のファイルのスクリーンショットをここに添付しています.

以下の機能を変更する4つのシナリオが必要です( "H"列のすべてに適用されます)

1-スクリーンショットのように機能します.

2-「C」欄のデータを参照する代わりに、同じ機能を適用しており、「D」欄

を参照してください.

3-同じ機能を適用した「D」列のデータを参照する代わりに、「E」欄

を参照してください.

4-同じ機能を適用したデータを参照する代わりに、「E」欄の「F」欄

を参照してください.

この動作(関数基準の間に分類されることは、私は "i"、 "j"、 "k"も;

so-私はたとえば、列 "d"などを参照するために、列h、i、j、kの関数の参照を変更するシナリオが必要です.

4つのボタンを押して、どちらのボタンを押すかを選択できるか(すべてのシナリオのボタン)を選択できます.

Excelのシナリオは私に完璧な結果を与えていません.

このシートのUIのオプションを見ることができます.

これらの計算からすべてを計算する別の表に影響します.

あなたの忍耐力と意欲をお手伝いします!

応答3# ->にスキップ
4 #
DihaoGu

こんにちは、ロイ

ここで詳細情報を共有していただきありがとうございます.情報に基づいて、VBAソリューションは、4つのシナリオでMarcoボタンを構成するのに適しています.このスレッドをMicrosoftプログラミングに移動し、一部のメンバーが
は、VBAコードをさらに変更するためのいくつかの提案やアイデアを提供する場合があります.また、すべてのメンバーがここで意見を共有することを歓迎します.

応答4# ->にスキップ
5 #
RoyBogn

ありがとうございました.

これらのメンバーの救命体にどのように従うことができますか?

リンクを共有しますか?あなたはここに投稿しますか?

応答5# ->にスキップ
6 #
Andreas

すでに発生していますが、前述のとおり、ファイルが必要です...

リンクを共有した場合は、確認します.

アンドレアス.

応答6# ->にスキップ
7 #
RoyBogn

こんにちはandreas、

ありがとうございました.

私はあなたに別の方法で送ることができますか?

ファイルをダウンロードできず、

を添付するオプションが表示されません
8 #
RoyBogn

私の組織はアクセスをブロックしています.

それを他の方法で共有できますか?

応答8# ->にスキップ
9 #
Andreas

ここに私のドロップボックスにファイルをアップロードしてみてください:

https://www.dropbox.com/request/nRwG5D3a93QOzaOz4Yqq

アンドレアス.

応答9# ->にスキップ
10 #
RoyBogn

アンドレアス、ありがとう.

上記のリンクにファイルをアップロードしました.

応答10# ->にスキップ
11 #
Andreas 1

こんにちはロイ、

マクロを必要としない、2列を追加することができ、列Lのタイプを選択できます.

それから、列を列Mのデータで算出することができます.

今度は式を単純化することができます:

h3:= ifError(vlookup(customers_table [@] [@] [@]]]、B3:F5、[@ COL]、「」、「」) I3:= ifError(vlookup(vlookup(@Access]、B7:F9、[@ COL]、0)、 "")
j3:= ifError(vlookup(customers_table [@Optimization]、B10:F11、[@ COL]、0)、 "")

kの式は少し複雑です:

k3:= ifError(if(または(isblank of environment of environment of environment oven)、isblank(customers_table [@ [アップグレード数]])、ISBLANK(customers_table [@ installation])))、 "" (Customers_Table [@ Installation]= B15、(SUM(Index(B12:F14 , [@ COL))* CUSTOMERS_TABLE [@ [番号)
(アップグレード数)])/12、((Customers_Table [@] [アップグレード数]]*インデックス(B13:F13 , [@ COL]))+(インデックス(B14:F14 , [@ COL)* Customers_Table [ @ [アップグレード数]])+ sum(インデックス(B12:F14, [[]))* Customers_Table [@ [環境数]]/12))、 "")

これはあなたの変更されたファイルです:

https://www.dropbox.com/s/dco636sk13izb1j/28fda882-a563-416a-a2ba-130750996552.xlsx?dl=1

andreas.