Avatar billede mhp_dk Nybegynder
22. juni 2005 - 21:47 Der er 3 kommentarer og
1 løsning

Springe over rækker i eksport

Hej

Jeg har tidligere fået vedlagte kode som jeg har tilpasset lidt, men nu har jeg det problem at jeg gerne vil springe over en hel række i eksporten hvis den første celle i rækken indeholder en bestemt værdi, f.eks.
"Nej". Kan nogen hjælpe med det ?

Sub Question279475()
    Dim rSheet As Worksheet
    Dim rUsedRange As Range
    Dim rRow As Range
    Dim rCell As Range
    Dim lFileNum As Long
    Dim sLine As String
    Dim sLine2 As String
    Dim taeller As String
   
    taeller = 0
   
    Set rSheet = Sheets("Output")
    Set rUsedRange = rSheet.UsedRange
    ' If rSheet contains headings not to be show'n in file - then activate next line
    'Set rUsedRange = rUsedRange.Offset(1, 0).Resize(rUsedRange.Rows.Count - 1)
    lFileNum = FreeFile

    Open "c:\Upload\output.txt" For Output As #lFileNum
        For Each rRow In rUsedRange.Rows
            sLine = ""
         
            For Each rCell In rRow.Cells
           
              sLine = sLine & Trim(CStr(rCell.Value)) & ";"
                taeller = taeller + 1
   
            Next rCell
    If Len(sLine) > 0 Then    'skal ikke skrive en tom linie
            sLine2 = Mid(sLine, 1, Len(sLine) - 1)
            Print #lFileNum, sLine2
    End If
        Next rRow
    Close #lFileNum
    MsgBox "" & taeller & " vare blev eksporteret til "
    'Clean up
    Set rSheet = Nothing
    Set rUsedRange = Nothing
    Set rRow = Nothing
    Set rCell = Nothing
End Sub
Avatar billede stefanfuglsang Juniormester
23. juni 2005 - 09:52 #1
Det kan klares med en mindre rettelse:


Sub Question279475()
    Dim rSheet As Worksheet
    Dim rUsedRange As Range
    Dim rRow As Range
    Dim rCell As Range
    Dim lFileNum As Long
    Dim sLine As String
    Dim sLine2 As String
    Dim taeller As String
   
    taeller = 0
   
    Set rSheet = Sheets("Output")
    Set rUsedRange = rSheet.UsedRange
    ' If rSheet contains headings not to be show'n in file - then activate next line
    'Set rUsedRange = rUsedRange.Offset(1, 0).Resize(rUsedRange.Rows.Count - 1)
    lFileNum = FreeFile

    Open "c:\Upload\output.txt" For Output As #lFileNum
        For Each rRow In rUsedRange.Rows
            sLine = ""
         
            If UCase(rRow.Cells(1, 1)) <> "NEJ" Then
                For Each rCell In rRow.Cells
           
                    sLine = sLine & Trim(CStr(rCell.Value)) & ";"
                    taeller = taeller + 1
   
                Next rCell
                If Len(sLine) > 0 Then    'skal ikke skrive en tom linie
                    sLine2 = Mid(sLine, 1, Len(sLine) - 1)
                    Print #lFileNum, sLine2
                End If
            End If
        Next rRow
    Close #lFileNum
    MsgBox "" & taeller & " vare blev eksporteret til "
    'Clean up
    Set rSheet = Nothing
    Set rUsedRange = Nothing
    Set rRow = Nothing
    Set rCell = Nothing
End Sub
Avatar billede mhp_dk Nybegynder
23. juni 2005 - 12:48 #2
Nemlig, gi et svar og der er points
Avatar billede stefanfuglsang Juniormester
23. juni 2005 - 13:56 #3
OK!
Avatar billede mhp_dk Nybegynder
23. juni 2005 - 13:57 #4
Tak for hjælpen !
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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