엑셀로 그누보드 게시판 자동 글쓰기-ie만 되는 vba 코드 > 자유게시판

자유게시판

엑셀로 그누보드 게시판 자동 글쓰기-ie만 되는 vba 코드 정보

엑셀로 그누보드 게시판 자동 글쓰기-ie만 되는 vba 코드

본문

Sub UploadDataToWebsiteWithVBA3()
    Dim IE As Object
    Dim Title As String
    Dim Content As String
    Dim 반복횟수 As Integer
    Dim i As Integer
    Dim 현재셀 As Range ' 새로운 변수 선언

    ' 현재 열린 워크북 및 시트 가져오기
    Dim WB As Workbook
    Dim WS As Worksheet
    Set WB = ThisWorkbook ' 현재 열린 워크북
    Set WS = WB.Sheets("Sheet1") ' 원하는 시트의 이름으로 수정

    ' 선택한 행부터 시작하여 다음 행의 데이터를 읽어서 반복 횟수로 설정
    ' 반복횟수 = WS.UsedRange.Rows.Count - ActiveCell.Row + 1
'=======

'====== 5번 반복

    For i = 1 To 5
        ' 선택한 셀의 데이터를 변수에 대입
        Title = WS.Cells(현재셀.Row, 2).Value
        Title = Title & "(" & WS.Cells(현재셀.Row, 1).Value & ")"
        Content = WS.Cells(현재셀.Row, 3).Value & WS.Cells(현재셀.Row, 4).Value

        ' 인터넷 익스플로러로 웹사이트 열기
        IE.Navigate "http://그누보드게시판 주소"

        ' 페이지가 로딩될 때까지 대기
        Do While IE.busy
            Application.Wait DateAdd("s", 1, Now)
        Loop

        ' 데이터 입력
        IE.Visible = False
        IE.Document.getElementById("wr_subject").Value = Title
        IE.Document.getElementById("wr_content").Value = Content
        IE.Document.getElementById("btn_submit").Click

        ' 페이지가 로딩될 때까지 대기
        Do While IE.busy
            Application.Wait DateAdd("s", 1, Now)
        Loop
        
        ' 선택한 셀을 파란색으로 색칠
        현재셀.Interior.Color = RGB(170, 255, 170)
        
        ' 다음 행으로 이동
        Set 현재셀 = 현재셀.Offset(1, 0) ' 현재셀을 다음 행의 첫 번째 셀로 이동
        
    Next i

    ' 인터넷 익스플로러 초기화
    IE.Quit
    Set IE = Nothing

    ' 완료 메시지 표시
    MsgBox "주인님^.^ " & 반복횟수 & "번 글쓰기를 하였습니다.", vbInformation, "알림"
End Sub

 

Function GetIEInstance() As Object
    Dim objShell As Object
    Dim objWindows As Object
    Dim objIE As Object
    
    ' Shell 객체 생성
    Set objShell = CreateObject("Shell.Application")
    
    ' 모든 Windows 컬렉션 가져오기
    Set objWindows = objShell.Windows
    
    ' 인터넷 익스플로러 찾기
    For Each objIE In objWindows
        If TypeName(objIE.Document) = "HTMLDocument" Then
            If InStr(objIE.FullName, "iexplore.exe") > 0 Then
                Set GetIEInstance = objIE
                Exit Function
            End If
        End If
    Next objIE
    
    ' 인터넷 익스플로러가 없을 경우 Nothing 반환
    Set GetIEInstance = Nothing
End Function

추천
0
  • 복사

댓글 0개

© SIRSOFT
현재 페이지 제일 처음으로