Automatisch Diagrammen aanmaken voor afzonderlijke rijen in een Data Table

David heeft een werkblad dat hij gebruikt om de omzet per bedrijf te volgen gedurende een aantal maanden. De namen van bedrijven zijn in kolom A en tot vijftien maanden van de omzet wordt in de kolommen B: P. David wil graag een grafiek die dynamisch kan worden veranderd om de verkoop voor een enkel bedrijf uit het werkblad te tonen te creëren.

Er zijn verschillende manieren waarop dit kan worden gedaan; Ik zal drie van hen te onderzoeken in deze tip. Omwille van voorbeeld, laten we aannemen dat het werkblad naam MyData, en dat de eerste rij bevat datatitels. De namen van bedrijven zijn in het bereik A2: A151, en de verkoop van gegevens voor die bedrijven is in B2: P151.

Een benadering is om Excel's AutoFilter vermogens te gebruiken. Maak uw grafiek zoals je normaal zou doen, zorg ervoor dat de grafiek is geconfigureerd om de datareeksen trekken uit de rijen van de MyData werkblad. Je moet ook plaats de grafiek op zijn eigen vel.

Kies nu A1 op MyData en een AutoFilter toepassing (Data | Filter | AutoFilter). Een kleine drop-down pijl verschijnt aan de bovenkant van elke kolom. Klik op het drop-down pijl voor kolom A en kies het bedrijf dat u wilt weergeven in de grafiek. Excel hertekent de grafiek om alleen de één bedrijf behoren.

De enige potentiële nadeel van de AutoFilter benadering is dat elk bedrijf wordt beschouwd als een onafhankelijke gegevensreeks, hoewel slechts één van hen wordt weergegeven in het diagram. Omdat ze onafhankelijk is elk bedrijf gebracht in een andere kleur. Als u wilt dat dezelfde grafieken kleuren om altijd gebruikt worden, dan moet u een van de andere methoden gebruiken.

Een andere manier om het probleem aan te pakken is door het gebruik van een "tussenproduct" data-tabel die dynamisch wordt gecreëerd, trekt alleen de gewenste informatie van de grotere gegevenstabel. De kaart wordt dan gebaseerd op de dynamische tussentafel. Volg deze stappen:

  1. Maak een nieuw werkblad en noem maar iets als "ChartData".
  2. Kopieer de kolomkoppen van de MyData werkblad naar de tweede rij op de ChartData vel. (Met andere woorden, kopiëren MyData! A1: P1 tot ChartData A2:!. P2 Dit laat de eerste rij van de ChartData vel tijdelijk leeg.)
  3. Met de MyData werkblad weergegeven, kiest u Beeld | Werkbalken | Formulieren. De werkbalk Formulieren moeten worden weergegeven.
  4. Met behulp van de werkbalk Formulieren, trek een Combo Box controle ergens op de MyData werkblad.
  5. Geef het dialoogvenster Format Controle doos voor de nieuw gecreëerde Combo Box. (Klik rechts op de Combo Box en kies Format Controle.)
  6. Met behulp van de besturingselementen in het dialoogvenster de Input Range als MyData $ A $ 2: $ A $ 151, geeft u de Cell link als ChartData $ A $ 1, en geef de dropdown Lines als 25 (of welke figuur je wilt!). (Zie figuur 1.)

    Automatisch Diagrammen aanmaken voor afzonderlijke rijen in een Data Table

    Figuur 1. Het dialoogvenster Format schakelkast.

  7. Klik op OK om het dialoogvenster te ontslaan. Je hebt nu een werkende Combo Box dat, zodra je het gebruiken om een ​​bedrijfsnaam selecteert, wordt een waarde in cel A1 van het ChartData werkblad te plaatsen die aangeeft wat u hebt geselecteerd.
  8. Met verschijnt de ChartData werkblad, voert u de volgende formule in cel A3:

    = INDEX (MyData A2: A151, $ A $ 1)
  9. Kopieer de inhoud van cel A3 om het bereik B3: P3. Rij 3 bevat nu de gegevens van welke bedrijf is geselecteerd in de Combo Box.
  10. In cel B1 voer de volgende formule. (Het resultaat van deze formule zal fungeren als de titel voor uw dynamische grafiek.)

    = "Data voor" & A3

  11. Selecteer de kolomkoppen en data (B2: P3) en maak een grafiek op basis van deze gegevens. Stel de titel van de grafiek om een ​​aantal tijdelijke tekst; het maakt niet uit wat het nu is.
  12. In de voltooide grafiek, selecteert u de grafiek titel.
  13. In de Formule bar, voert u de volgende formule:

    = ChartData! $ A $ 3

    Je hebt nu een volledig functionerende dynamische grafiek. U kunt de Combo Box gebruiken om een ​​ander bedrijf te selecteren, en de grafiek opnieuw getekend met behulp van de gegevens van het bedrijf dat u kiest. Als u wilt, kunt u verplaatsen of kopiëren van de Combo Box om het blad met de grafiek, zodat u de bijgewerkte grafiek elke keer dat u een selectie te maken kunt bekijken. Ook kunt u, indien gewenst, verbergt de ChartData werkblad.

    Een derde benadering is om een ​​macro gebruiken om het bereik waarop een grafiek is gebaseerd. Ter voorbereiding van deze benadering, maakt u twee benoemde bereiken in uw werkmap. De eerste naam moet ChartTitle, en het moet verwijzen naar de formule = VERSCHUIVING (MyData! $ A $ 1,22,0,1,1) Klik op Toevoegen en vervolgens de tweede naam te definiëren. Deze moet worden genoemd ChartXRange, en het moet verwijzen naar de formule = VERSCHUIVING (MyData! $ A $ 1,22,0,1,15). (Zie figuur 2.)

    Automatisch Diagrammen aanmaken voor afzonderlijke rijen in een Data Table

    Figuur 2. De Naam bepalen dialoogvenster.

    ! Met gedefinieerde namen, kunt u het bereik MyData B1 selecteren: P2 en maak uw grafiek. Je moet het schema te baseren op deze eenvoudige reeks, en zorg ervoor dat u een aantal tijdelijke tekst in de grafiek titel te plaatsen. Zorg ervoor dat de grafiek wordt gemaakt op zijn eigen vel en dat je de naam van de sheet Grafiekbladweergave.

    Met de grafiek gemaakt met de rechtermuisknop op het diagram en Brongegevens kiezen. Excel toont het dialoogvenster Brongegevens doos, en je moet kiezen voor het tabblad Series. Aangezien u het overzicht op de headers en een enkele rij gegevens gebaseerd, moet er één gegevensreeks in het dialoogvenster zijn. Vervang wat er in het vak Waarden met de volgende formule:

    = 'Book1'! ChartXRange

    Zorg ervoor dat je Book1 te vervangen door de naam van de werkmap waarin u werkt. Klik op OK en de grafiek is nu gebaseerd op het benoemde bereik eerder opgegeven. U kunt nu de grafiek titel en plaats de volgende in de Formule balk om de titel dynamisch te maken:

    = MyData! ChartTitle

    Nu bent u klaar om de macro die alles dynamisch maakt voegen. Toon de VBA-editor en voeg de volgende macro om de code-venster voor de MyData werkblad. (Dubbelklik op de naam van het werkblad in de Project Explorer gebied.)

    Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Excel.Range, Annuleren Als Boolean)
    ActiveWorkbook.Names.Add Naam: = "ChartXRange", _
    RefersToR1C1: = "! = VERSCHUIVING (MyData R1C1," & _
    ActiveCell.Row - 1 & ", 1,1,15)"
    ActiveWorkbook.Names.Add Naam: = "ChartTitle", _
    RefersToR1C1: = "! = VERSCHUIVING (MyData R1C1," & _
    ActiveCell.Row - 1 & ", 0,1,1)"
    Sheets ("Grafiekbladweergave"). Activeren
    Cancel = True
    End Sub

    Nu kunt u de MyData werkblad weer te geven en dubbelklikt u op elke rij. (Nou ja, dubbelklikt u in kolom A voor een rij.) De macro werkt vervolgens de benoemde bereiken, zodat ze wijzen op de rij waarop je dubbel-klikt, en geeft vervolgens de Grafiekbladweergave vel. De grafiek (en titel) zijn opnieuw getekend om de gegevens in de rij waarop u dubbelklikt op reflecteren.

    ExcelTips is uw bron voor kosteneffectieve Microsoft Excel training. Deze tip (2377) is van toepassing op Microsoft Excel 97, 2000, 2002 en 2003. U kunt een versie van deze tip voor de ribbon-interface van Excel (Excel 2007 en later) vinden hier: Automatisch Diagrammen aanmaken voor afzonderlijke rijen in een Data Table .