Hvordan skrive flere rader til Excel ved hjelp av Vb.Net

Når du bygger Visual Basic.Net-applikasjoner, bør du vurdere å legge til en eksport til Excel-funksjonen i tillegg til trykte rapporter. Den ekstra funksjonaliteten tar liten kode, og kundene dine kan sortere og analysere dataene på en hvilken som helst måte de velger. Bruk skjemaformgiveren i Visual Basic for å legge til denne funksjonen.

1.

Åpne Visual Studio og opprett et nytt Visual Basic-prosjekt. Klikk på "File" og "New Project." Når dialogboksen for nye prosjekter vises, velg "Visual Basic / Windows" fra trevisningen, klikk på "Windows Forms Application" -ikonet, navnet prosjektet "ExcelTest, " og klikk deretter "OK". "Etter en kort ventetid vil skjemaformgiveren vises.

2.

Legg til en referanse til Excel ActiveX-komponenten. Klikk på "Prosjekt" i rullegardinmenyene, og klikk deretter på Legg til referanse. Klikk på "COM" -fanen og bla ned til "Microsoft Excel." Det kan være flere eksempler på Excel oppført, så velg en nylig versjon som er lett tilgjengelig på kundenes datamaskiner.

3.

Legg til en knapp i skjemaet. Klikk på Verktøykasse-ikonet for å åpne verktøykassen, og dra deretter en knapp til skjemaet. Høyreklikk på knappen og velg "Egenskaper". Når eiendomslisten vises, må du trykke på knappen "btnToExcel" og endre tekstegenskapen til "Til Excel". Klikk nå på den nye knappen for å åpne kodevinduet.

4.

Legg til bibliotekets import til toppen av programkoden som følger:

Importerer Microsoft.Office.Interop Imports System.Text Public Class Form1

5.

Erklære private felt for Excel-objektene:

Privat excelApp = Ny Excel.Application Privat excelDoc Som Excel.Workbook Privat Excel-ark Som Excel.Worksheet Privat utvalg Som Excel.Range

6.

Opprett innholdet som skal gå inn i regnearket, for eksempel:

Private Sub btnToExcel_Click(sender As System.Object, e As System.EventArgs) Handles btnToExcel.Click Dim txt As New StringBuilder Dim i, j As Integer For i = 1 To 20 For j = 1 To 10 txt.Append(i * j) txt.Append(vbTab) Next txt.AppendLine() Next Clipboard.SetText(txt.ToString) 

Innholdet som sendes til regnearket i dette eksemplet, bruker en multiplikasjonstabel på 10 til 20. Alle dataene blir vedlagt en StringBuilder med kolonner adskilt av faner (vbTab) og hver rad er skilt av en ende av linjetegn (ved hjelp av AppendLine-metoden). Etter alt innhold blir kopiert til StringBuilder, blir det plassert i utklippstavlen. Når regnearket er åpent, vil koden lim inn disse dataene i regnearket.

7.

Åpne regnearket:

excelApp = CreateObject ("Excel.Application") excelApp.Visible = True excelDoc = excelApp.Workbooks.Add () excelSheet = excelDoc.ActiveSheet

Her oppretter programmet et nytt Excel-applikasjonsobjekt ved hjelp av CreateObject-metoden, og setter deretter sin synlige egenskap til True for å fortelle Excel for å vise seg på skjermen. Det oppretter deretter et nytt WorkSheet og får et håndtak til den aktive siden.

8.

Lim inn dataene i den første cellen i regnearket:

  range = excelSheet.Cells(1, 1) excelSheet.Paste(range) End Sub 

Sluttklasse

Få rekkevidden til den første cellen, og lim deretter inn innholdet av utklippstavlen i cellen. Flikene og linjeledene separerer kolonnene og radene.

9.

Kjør programmet. Klikk på "F5" for å starte programmet, og klikk deretter på "Til Excel" -knappen for å åpne og vise regnearket.

Ting som trengs

  • Microsoft Visual Studio eller Visual Basic Express 2010
  • Microsoft Office Excel 2010, 2007 eller XP

Tips

  • Denne samme teknikken fungerer for data fra SQL-spørringer, tekstfiler eller andre data som kan presenteres på en rapport eller ListView. For bedre presentasjon, ta med navnet på en Excel-mal til arbeidsboken. Åpen metode og dataene legges over på en forhåndsformatert mal.

Populære Innlegg