나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 스나이퍼 (nukeem)

추천:  2
파일:     조회:  6420
제목:   VBA 범위 설정에서 에러발생합니다. 해결방법점 가르쳐 주세요.
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

1. 엑셀 버전(95,97,2000,2002):
2. 윈도우즈의 버전(win95,win98,winME,winNT,win2000,winXP):
3. CPU (486,PentiumI/II/III/IV...):
4. RAM (32,64,128,256,512MB,1G...): 

* 아래줄에 질문을 작성하세요 >>
선택한 셀과 같은 내용을 같은 열에서 찾아서 행을 삭제하는 것입니다.
텍스트 파일을 불러들여서 정리할 때 편리한대여
아래코드는 Columns(검색컬럼) 이부분에서 문제가 있어서
에러가 발생됩니다.
range("B:B")와 같은 형식으루 하면 에러가 안나지만 이렇게 하면
열을 임의로 지정해 줄수 없더군여.

이것점 어떻게 해결할 수 없을 까여? 좀 가르쳐 주세요.


Sub 선택한것삭제()

    Dim 셀 As Range, 선택범위 As Range
    Dim 삭제할것 As String, 검색컬럼 As Integer

    Set 선택범위 = Application.InputBox(prompt:="삭제할 값이있는 셀 선택", Type:=8)
    삭제할것 = 선택범위.Formula
    검색컬럼 = 선택범위.Column
    MsgBox 삭제할것
    For Each 셀 In Columns(검색컬럼)
        If 셀.Formula <> "" And 셀.Row > 5 Then
            If 셀.Formula = 삭제할것 Then
                셀.EntireRow.Delete shift:=xlUp
            Else
            End If
        Else
        End If
    Next 셀
End Sub
 
[불량 게시물 신고]  
김종철Columns(검색컬럼)를 Columns(검색컬럼).cells로 바꿔보세요.06-27 (17:56)
삭제 ■신고
스나이퍼정말 감사합니다. 덕분에 해결했습니다.06-27 (18:27)
삭제 ■신고
리티이렇게도 해보시고..

Sub 선택한것삭제()

    Dim 선택범위 As Range
      On Error Resume Next
         Set 선택범위 = Application.InputBox("삭제할 범위 ", Default:=Selection.Address, Type:=8)
    
   
        If 선택범위 Is Nothing Then
           MsgBox "취소"
           Else
           선택범위.Delete shift:=xlUp
           
         End If
       
    
End Sub
06-27 (18:55)
삭제 ■신고
스나이퍼저같은 초보에게 귀중한 정보를 주시는군여. 
에러 방지에, 디폴트 값 지정, 취소에 대한 것까지 깔끔하게 정리해 주셨네요. 여기 고수님들덕에 많이 배웁니다. ^^ 감사합니다.
06-27 (23:01)
삭제 ■신고
        
  

작성일 : 2003-06-27(17:35)
최종수정일 : 2003-06-27(17:35)