Avatar billede telep Nybegynder
13. januar 2005 - 16:01 Der er 3 kommentarer og
1 løsning

Slette række i Excel fra Visual Basic

Hejsa,

Jeg skal slette en række (row) i Excel fra mit VB-program

Hvordan gør jeg?

Har følgende kode:

Set wkbObj = objExcel.Workbooks.Open(txtFile.Text) 'Åbner Excel i baggrunden
Data = wkbObj.Sheets(1).Range("a1").CurrentRegion
a = wkbObj.Sheets(1).Range("a1").CurrentRegion.Columns.Count

Dim prv As String
Dim root As String
Dim line As Integer
root = Data(1, kol)

For I = 1 To UBound(Data)
    If Data(I, 2) = prv Then
        root = root & ", " & Data(I, kol)
        'HER SKAL RÆKKEN SLETTES
        'DET ER ALTSÅ RÆKKE NR. I
Avatar billede overchord Nybegynder
13. januar 2005 - 16:49 #1
normalt benytter du bare Range("a1").EntireRow.Delete (xlUp)
Avatar billede bak Forsker
13. januar 2005 - 16:52 #2
Jeg ville nok køre løkken baglæns, da det ellers nemt går galt.
Da Data er 2-dimensionel skal du i løkken  lige fortælle at det er ubound af 1. dimension, den skal bruge

For I = UBound(Data, 1) to 1
    If Data(I, 2) = prv Then
        root = root & ", " & Data(I, kol)
        Data(I,kol).EntireRow.Delete
    End If
Next
Avatar billede telep Nybegynder
13. januar 2005 - 17:20 #3
bak: det spiller ikke!

Desuden er det ikke en mulighed at køre baglæns...
Avatar billede telep Nybegynder
13. januar 2005 - 19:52 #4
lukker!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester