Note: The other languages of the website are Google-translated. Back to English

Excelでスクロールするときに常にグラフを表示し続けるにはどうすればよいですか?

シートにグラフが挿入されている場合、シートを下にスクロールしてデータを表示しているときに、下のスクリーンショットのようにグラフを同時に表示することはできません。これは厄介なことです。 この記事では、シートを上下にスクロールしてもグラフが常に表示されるようにするVBAコードを紹介します。

ドキュメントはチャートをビューに保持します1
下向き矢印
ドキュメントはチャートをビューに保持します2

常にチャートを表示してください


矢印青い右バブル 常にチャートを表示してください

シートをスクロールしているときにグラフを表示したままにするには、以下のVBAコードを適用して解決します。

1.グラフを表示したままにするシートタブを右クリックし、をクリックします コードを表示 コンテキストメニューを形成します。 スクリーンショットを参照してください:
ドキュメントはチャートをビューに保持します3

2.ポッピングで アプリケーション向け Microsoft Visual Basic ウィンドウで、以下のコードを空白のスクリプトに貼り付けます。

VBA:チャートを常に表示する

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'UpdatebyExtendoffice20161111
    Dim CPos As Double
    Application.ScreenUpdating = False
    CPos = ActiveWindow.ScrollRow * ActiveCell.RowHeight
    ActiveSheet.ChartObjects("Chart 2").Activate
    ActiveSheet.Shapes("Chart 2").Top = CPos
    ActiveWindow.Visible = False
    Application.ScreenUpdating = True
End Sub

ドキュメントはチャートをビューに保持します5

3.ダイアログを保存して閉じると、任意のセルをクリックするとグラフが上下に移動します。
ドキュメントはチャートをビューに保持します6

注意:

(1)VBAコードでは、チャート2は表示したいチャート名であり、必要に応じて変更できます。

(2)このVBAは、チャートのグループを常に表示できるとは限りません。


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (15)
4.75の5を評価 · 2の評価
このコメントは、サイトのモデレーターによって最小化されました
これは良かったのですが、見出しの線のように、スクロールホイールと一緒に動く方法があればいいのにと思います。 また、セルを選択したい場合は、XNUMX回クリックする必要があります。 最初のクリックでグラフが移動しますが、グラフも選択されるため、セルを選択するにはもう一度クリックする必要があります。
このコメントは、サイトのモデレーターによって最小化されました
このコードの最後の行に「activecell.select」を追加し、ダブルクリックの問題を修正しました。 最後にアクティブなセルが自動的に選択されます。これは、チャートを移動するためにクリックしたセルになります。 お役に立てれば。
このコメントは、サイトのモデレーターによって最小化されました
これが私に必要なものです! ゴールデン!
このコメントは、サイトのモデレーターによって最小化されました
このマクロは、私が望んでいたことを正確に実行しました。 しかし、それはあなたが解決策を持っているのではないかと私が思った別の問題を引き起こしました。

このマクロがアクティブな間、フォーマットやマージなどの他の目的でセルを選択することはできません。 クリックアンドドラッグ、シフト、またはCtrlキーを押しながら、セルのグループを選択します。 クリックしたセルはXNUMXつしか選択できません。 書式を変更したいことがよくあります(背景、数式の入力など)。これを実行できる唯一の方法は、マクロを削除して保存し、書式を変更して、マクロを貼り付けて保存することです。

これを行うためのより簡単な方法はありますか? 多分:

1.(推奨)マクロを一時的に無効にしてから再度有効にする単純なキーストローク。

2.セルのグループを選択できるようにするためにマクロに追加されたコード。

デニス
このコメントは、サイトのモデレーターによって最小化されました
Googleスプレッドシート用に作成できる同様の数式はありますか?
このコメントは、サイトのモデレーターによって最小化されました
チャートが移動するシートの高さを制限する方法はありますか? 行8の上に貼り付けたくない
このコメントは、サイトのモデレーターによって最小化されました
Hola muchas gracias porelcódigo、utilizandoestecódigo¿ por ejemplo、no quiero que se coloque encima de la fila 9. Ayudaporfavor。
5の5を評価
このコメントは、サイトのモデレーターによって最小化されました
Kutoolsを使用して、そのVBAをチャートに自動的に使用できますか??
このコメントは、サイトのモデレーターによって最小化されました
申し訳ありませんが、Wangnuli、Kutools はこれをサポートしていません。
このコメントは、サイトのモデレーターによって最小化されました
誰でも助けることができますか? これらの手順に従うと


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'UpdatebyExtendoffice20161111
Dim CPos As Double
Application.ScreenUpdating = False
CPos = ActiveWindow.ScrollRow * ActiveCell.RowHeight
ActiveSheet.ChartObjects("チャート 2").Activate
ActiveSheet.Shapes("チャート 2").Top = CPos
ActiveWindow.Visible = False
Application.ScreenUpdating = True
End Subの


次のエラーが表示されます

実行時エラー '-2147024809 (80070057)':
指定された名前のアイテムは見つかりませんでした

デバッグするとき
ActiveSheet.ChartObjects("チャート 2").Activate
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、Christo さん。チャート名「Chart 2」を、スクリプト内の実際のチャート名に変更する必要があります。 チャートをクリックすると、名前ボックスにその名前が表示されます。 スクリーンショットを参照してください:
https://www.extendoffice.com/images/stories/comments/sun-comment/do_chart_name.png
このコメントは、サイトのモデレーターによって最小化されました
はい、ありがとう。 質問をした後、チャート名が間違っていることに気付きました
感謝

PS。
スクロールするときにチャートが表示されたままになるようにする方法を知っていますか?
このコメントは、サイトのモデレーターによって最小化されました
セルの選択を解除すると問題が発生し、XNUMX つのグラフが必要になったので、いくつか変更を加えたところ、現在は機能しているようです。
それを使用するには、正しいチャート名を入力します。
*注: これは XNUMX つのチャート用です


Private Sub worksheet_selectionchange(ByVal target As Range)
薄暗い chartposition As Double

chartposition = ActiveWindow.ScrollRow * ActiveCell.RowHeight
ActiveSheet.Shapes("チャート 2").Top = chartposition

ActiveSheet.ChartObjects("チャート 3").Top = chartposition + 250

End Subの
このコメントは、サイトのモデレーターによって最小化されました
A mi me pasa que la siguiente vez que abro el archivo, el script ya no funciona. Tengo que copiarlo, borrarlo, cerrar el archivo tras guardarlo, volver a abrir el archivo y volver a pegar el script en VBA. ¿Alguna solución?
4.5の5を評価
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、ブックを Excel マクロ有効ブックとして保存すると、次回開いたときに vba が機能します。https://cdn.extendoffice.com/images/stories/comments/sun-comment/doc-macro-enable.png
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護