Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programvara
  • Adobe Illustrator
  • animation Software
  • antivirusprogram
  • ljudprogram
  • Säkerhetskopiera data
  • Bränn CD-skivor
  • Bränn DVD
  • Data Compression
  • Database Software
  • Desktop Publishing
  • Desktop Video
  • Digital Video Software
  • Drupal
  • Educational Software
  • Engineering Software
  • Filtillägg Typer
  • Financial Software
  • Freeware , Shareware & Abandonware
  • GIMP
  • Graphics Software
  • Home Recording Software
  • Microsoft Access
  • Microsoft Excel
  • Microsoft Publisher
  • Microsoft Word
  • Open Source Code
  • Andra datorprogram
  • PC-spel
  • Photoshop
  • Portable Document Format
  • PowerPoint
  • presentationsprogram
  • Produktivitet Software
  • quicktime
  • Remote Desktop Management
  • SQL Server
  • Skype
  • Programvara betaversioner
  • Programvara Konsulter
  • Software Development Companies
  • Software Licensing
  • Spreadsheets
  • Skatt förberedelse programvara
  • Utility Software
  • Web Clip Art
  • Windows Media Player
  • Ordbehandlingsprogram
  • * Dator Kunskap >> Programvara >> Microsoft Access >> Content

    Avancerad Excel VBA Tutorial

    Microsoft Excels skriptspråk , Visual Basic for Applications , har många verktyg för att utvidga Excels standard kapacitet . Ett sådant verktyg är möjligheten att lägga till kontroller ( t.ex. kryssrutor och knappar ) direkt på kalkylblad . Använda Visual Basic kontroller och dess förmåga att utnyttja Excels kärnfunktioner gör för en effektiv handledning i att öka Excel via Visual Basic for Applications . Projekt : Använd Visual Basic för att beräkna delsummor

    genomföra ett projekt av datorer delsummor för kolumner i ett kalkylblad tabellen . Börja med att öppna Excel och skapa en tabell någonstans i kalkylbladet . Tabellen ser initialt ut som tabellen i Bild 1 .

    Markera tabellen , inklusive kolumnrubriker och skapa namnet " myTab " för denna tabell . Skapa namnet genom att skriva in det i Excel namn Box , som är mot det övre vänstra hörnet av Excel arbetsytan .
    Lägg Visual Basic Controls

    Lägg boxarna till bordet , med varje kryssruta sitter ovanför en tabell kolumn . Du kan hitta kryssrutorna enligt Utvecklare > Infoga > Form Controls . Lägg också till två knappar i kalkylbladet . Dra och släpp dem från samma område som kryssrutor till vänster och höger om myTab tabellen . Högerklicka på vänster knapp och ändra sin text att läsa "Gör delsummor . " Ändra texten på den högra knappen " Ta bort delsummor . "

    Placera knappar och kryssrutor så tabellen ser ut i tabellen i bild 2 .
    Skriv koden

    nu när du har utformat bordet och reglagen , kommer du skriva kod som gör delsummorna på bordet . Ange Visual Basic IDE ( integrerad utvecklingsmiljö ) och lägg till en modul . Klicka på Infoga > Modul . I koden fönstret för den nya modulen , anger denna programkod :

    Option Explicit

    Public Sub doSubtotal ( ) katalog

    Dim s Som StringDim r Som RangeDim c Som ObjectDim AR ( ) Som IntegerDim Ifield Som IntegerDim varItemsDim nChkd As Integer

    ReDim AR ( 0 till 0 ) katalog

    "ta bort tidigare subtotalsRemoveSubtotals

    'Skapa rad fält index (från 1 ) till delsumma

    Ifield = 1nChkd = 0

    " Loop through kryssrutor . Om man är markerad , lägga sitt område att arrayFor Varje hp I ActiveSheet.CheckBoxes
    p Om ( c.Value = 1 ) ThennChkd = nChkd + 1 ' lägga det här fältet till array

    AR ( UBound ( ar ) ) = iFieldReDim Preserve AR ( 0 till UBound ( ar ) + 1 ) ' lägg element för nästa markerade fält

    End If

    Ifield = Ifield + 1

    Nästa

    Om ( nChkd = 0 ) ThenMsgBox ( " kontrollera minst en ruta . " ) Exit SubEnd Om

    ReDim Preserve AR ( 0 Till UBound ( AR ) - 1 ) "ta bort tomma senaste elementvarItems = AR

    " Do faktiska delsumma . Först , hitta utbudet att göra delsumma på

    Set r = Application.Names ( " myTab " ) RefersToRange ' hämta det namngivna området till delsumma

    r.Subtotal GroupBy : . = 1 , Funktion : = xlSum , TotalList : = varItems , SummaryBelowData : = xlSummaryBelow

    End sub ​​

    Public sub RemoveSubtotals ( ) katalog

    " Kontrollera innan delsumma , med lagring tillhandahålls av kommentaren fältet i namnrymden för myTab ( ​​se formler > Namn manager ) " Vi lagrar tabellens ursprungliga , första kolumnen . Om nuvarande tabellens startkolumn skiljer , måste vi återställa tabellen till ursprunglig plats .

    Dim r Som RangeDim s Som StringDim nOrigCol As Integer

    Set r = Application.Names ( " myTab " ) . RefersToRanges = Application.Names ( " myTab " ) . Kommentera

    " Ingen kommentar betyder ingen tidigare körning , så ingen borttagning av tidigare delsumma , eller anpassning av original spänner , behövs .

    " Men , spara tabellens startkolumn för nästa samtal till detta function.If ( s = " " ) ThenApplication.Names ( " myTab " ) Kommentar = r.ColumnExit SubEnd Om

    Application.Range ( . " a1 : xfd65536 . " ) RemoveSubtotal

    ' Justera intervall : ta bort en kolumn om man var addednOrigCol = CInt (s ) Om ( nOrigCol < r.Column ) Thenr.Previous.EntireColumn.Delete

    End If

    End Sub
    Kör programmet
    Return

    till Excel-kalkylbladet som har myTab tabellen . Tilldela knapparna till makron du just skrev . Högerklicka på " Do Delresultat " -knappen och välj " Koppla makro . " I dialogrutan som visas väljer du " doSubtotal " -funktion , som är en del av den kod du just skrev . Stäng dialogrutan genom att klicka på " OK ", och tilldela den andra makro -funktionen du skrev , RemoveSubtotals , den andra knappen .

    Kör ditt program genom att kontrollera vilken kombination av kryssrutor och klicka på gör delsummor knappen . Rensa delsummor genom att trycka på någon annan knapp .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur till låsa upp Excel 2007 Password Protection
    ·Hur Sum textrutan Värden i Excel VBA
    ·Hur man gör en XY punktdiagram på Microsoft Excel
    ·Vad är skillnaden mellan en kryssruta och en värdelis…
    ·Hur man skapar en rapport Ögonblicksbild i Microsoft A…
    ·Coola tricks för Excel 2007 eller Word 2007
    ·Lär Microsoft Excel online gratis
    ·Hur man gör ett formulär med hjälp av Microsoft Exce…
    ·Hur man sätter in ett sidnummer i ett Excel- kalkylbla…
    ·Hur kopiera en tabell från Excel till Power Point i Wi…
    Utvalda artiklarna
    ·Hur man gör animerade ikoner på Gimp
    ·Hur man skapar ett fotogalleri i Flash
    ·Hur man ställer in en sökbar PDF Databas
    ·Hur man kör Excel skript i Open Office
    ·Hur man skapar en Seal Logo
    ·Så här aktiverar du en SyncMYCal Agent
    ·Hur man skapar en ny PowerPoint Slide Template
    ·Hur man skapar en knapp i Flash 8
    ·Vad är en klustrad diagram i Excel
    ·Hur får Lime Grön Med Gimp
    Copyright © Dator Kunskap http://www.dator.xyz