Kolom verwijderen VBA

Status
Niet open voor verdere reacties.

rvt1982

Gebruiker
Lid geworden
10 aug 2011
Berichten
156
Beste Leden,

Ik ben opzoek naar een code voor VBA die een bepaalde waarde zoekt en de hele kolom verwijderd.

Voorbeeld:
Waarde: 5

A B C D E F G
1 2 3 4 5 6 7

Kolom E moet volledig verwijderd worden.

Uitslag:
A B C D E F G
1 2 3 4 6 7 8

Alvast bedankt.
 
Verplaatst naar de juiste sectie, VBA sectie dus.
 
met een opgenomen macro, kom ik tot deze oplossing.

Code:
Sub kolomEverwijderen()
'
' kolomEverwijderen Macro
'

'
    Columns("E:E").Select
    Selection.Delete Shift:=xlToLeft
End Sub
 

Bijlagen

  • kolom E verwijderen VBA (oeldere0.xls
    31 KB · Weergaven: 100
Bedankt Oeldere,

De kolom E:E moet alleen gevonden worden dmv een bepaade waarde.

De VBA moet een bepaalde waarde zoeken, deze waarde staat in rij 1.
als VBA de waarde gevonden heeft dan moet de hele kolom verwijderen waar deze waarde in staat...

Het is eigenlijk de zelfde code als de gene hier onder.
alleen deze code maakt een kopie, zoekt en plakt.

ik wil ook zo iets alleen dan zoeken en verwijderen, en het zoeken moet van links naar rechts ipv van boven naar onder.

Code:
Sub Opslaan()
  
     Workbooks.Open Filename:="G:\DATA.xls"
    With ActiveWorkbook
        ThisWorkbook.Sheets("Map1").Range("CV17:CZ17").Copy
        .Sheets("Map2").Columns(2).Find(ThisWorkbook.Sheets("Map1").Range("CU17").Value, , _
                    xlValues, xlWhole).Offset(, 1).PasteSpecial xlPasteValues
        .Close True
    End With

End Sub
 
waarschijnlijk niet de mooiste oplossing, maar volgens mij werkt hij wel.

Code:
Sub kolomEverwijderen()
'
' kolomEverwijderen Macro
'
If Range("e1") = "5" Then


'
    Columns("E:E").Select
    Selection.Delete Shift:=xlToLeft
End If


End Sub
 
Bedankt Oeldere,

De range moet echt gezocht worden, omdat de waarde "5" ook ergens anders kan staan.
Het enige wat zeker is dat deze waarde in rij 1 staat.
maar welke ? "A" t/m "IV"

Thnx
 
Probeer dit eens.

Code:
Sub kolomverwijderen()
Application.ScreenUpdating = False
icol = Cells(1, Columns.Count).End(xlToLeft).Column
For x = icol To 1 Step -1
If Cells(1, x).Value = "5" Then Cells(1, x).EntireColumn.Delete
Next
Application.ScreenUpdating = True
End Sub

Niels
 
Bedankt Niels,

Ik heb deze script net werkend gekregen.

Code:
Sub tst()
    Sheets("Blad1").Rows(1).Find(Range("A2"), , xlValues, xlWhole).EntireColumn.Delete
End Sub

Thnx voor de hulp :thumb:
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan