728x90
728x90

'파이썬+VBA' 카테고리의 다른 글

cannot find declaration to go to 문제  (0) 2023.02.20
webdriver.Chrome 에러  (0) 2023.02.03
vba - if 크고 작고고 좀 이상해  (0) 2022.12.19
성별합계  (0) 2022.12.13
매크로 만들기  (0) 2022.11.07
728x90

Sub a종합점수CLKa()
    Do While Cells(4, 7 + find_blank_cell) <> "" '//마지막 데이터까지 추출
        find_blank_cell = find_blank_cell + 1
    Loop
    last_num = 7 + find_blank_cell - 1 '셀(4,7)에서 시작해서 마지막 셀 찾기

    
    '_1.
    val_1 = Cells(6, last_num) * 100
    If 5 <= val_1 And val_1 < 10 Then
        re_1 = 2
    ElseIf 10 <= val_1 And val_1 < 15 Then
        re_1 = 4
    ElseIf 15 <= val_1 And val_1 < 20 Then
        re_1 = 6
    ElseIf 20 <= val_1 And val_1 < 25 Then
        re_1 = 8
    ElseIf 25 <= val_1 And val_1 < 30 Then
        re_1 = 10
    Else
        re_1 = 0
    End If
    Cells(6, 4) = re_1
    
    '_2.
    val_2 = Cells(8, last_num) * 100
    If 5 * 0.7 <= val_2 And val_2 < 10 * 0.7 Then
        re_2 = 2
    ElseIf 10 * 0.7 <= val_2 And val_2 < 15 * 0.7 Then
        re_2 = 4
    ElseIf 15 * 0.7 <= val_2 And val_2 < 20 * 0.7 Then
        re_2 = 6
    ElseIf 20 * 0.7 <= val_2 And val_2 < 25 * 0.7 Then
        re_2 = 8
    ElseIf 25 * 0.7 <= val_2 And val_2 < 30 * 0.7 Then
        re_2 = 10
    Else
        re_2 = 0
    End If
    Cells(8, 4) = re_2

    '_3.
    val_3 = Cells(10, last_num) * 100
    If 60 <= val_3 And val_3 < 70 Then
        re_3 = 1
    ElseIf 70 <= val_3 And val_3 < 80 Then
        re_3 = 2
    ElseIf 80 <= val_3 And val_3 < 90 Then
        re_3 = 3
    ElseIf 90 <= val_3 And val_3 < 100 Then
        re_3 = 4
    ElseIf 100 <= val_3 And val_3 < 110 Then
        re_3 = 5
    Else
        re_3 = 0
    End If
    Cells(10, 4) = re_3

    '_4.
    val_4 = Cells(11, last_num) * 100
    If -1 <= val_4 And val_4 <= 1 Then
        re_4 = 5
    ElseIf -2 <= val_4 And val_4 <= 2 Then
        re_4 = 4
    ElseIf -3 <= val_4 And val_4 <= 3 Then
        re_4 = 3
    ElseIf -4 <= val_4 And val_4 <= 4 Then
        re_4 = 2
    ElseIf -5 <= val_4 And val_4 <= 5 Then
        re_4 = 1
    Else
        re_4 = 0
    End If
    Cells(11, 4) = re_4

    '_5.
    val_5 = Cells(13, last_num) * 100
    If 40 <= val_5 And val_5 < 50 Then
        re_5 = 2
    ElseIf 50 <= val_5 And val_5 < 60 Then
        re_5 = 4
    ElseIf 60 <= val_5 And val_5 < 70 Then
        re_5 = 6
    ElseIf 70 <= val_5 And val_5 < 80 Then
        re_5 = 8
    ElseIf 80 <= val_5 Then
        re_5 = 10
    Else
        re_5 = 0
    End If
    Cells(13, 4) = re_5

    '_6.
    val_6 = Cells(15, last_num) * 100
    If val_6 < 50 Then
        re_6 = 5
    ElseIf 50 <= val_6 And val_6 < 70 Then
        re_6 = 4
    ElseIf 70 <= val_6 And val_6 < 90 Then
        re_6 = 3
    ElseIf 90 <= val_6 And val_6 < 120 Then
        re_6 = 2
    ElseIf 120 <= val_6 And val_6 < 150 Then
        re_6 = 1
    Else
        re_6 = 0
    End If
    Cells(15, 4) = re_6
       
    '_7.
    val_7 = Cells(16, last_num) * 100
    If val_7 < 5 Then
        re_7 = 5
    ElseIf 5 <= val_7 And val_7 < 10 Then
        re_7 = 4
    ElseIf 10 <= val_7 And val_7 < 20 Then
        re_7 = 3
    ElseIf 20 <= val_7 And val_7 < 30 Then
        re_7 = 2
    ElseIf 30 <= val_7 And val_7 < 40 Then
        re_7 = 1
    Else
        re_7 = 0
    End If
    Cells(16, 4) = re_7
    
    '_8.
    val_8 = Cells(18, last_num)
    If val_8 < 0.5 Then
        re_8 = 5
    ElseIf 0.5 <= val_8 And val_8 < 1.5 Then
        re_8 = 4
    ElseIf 1.5 <= val_8 And val_8 < 2.5 Then
        re_8 = 3
    ElseIf 2.5 <= val_8 And val_8 < 3.5 Then
        re_8 = 2
    ElseIf 3.5 <= val_8 And val_8 < 4.5 Then
        re_8 = 1
    Else
        re_8 = 0
    End If
    Cells(18, 4) = re_8

    '_9.
    val_9 = Cells(19, last_num)
    If val_9 <= -0.4 Then
        re_9 = 5
    ElseIf val_9 <= -0.3 Then
        re_9 = 4
    ElseIf val_9 <= -0.2 Then
        re_9 = 3
    ElseIf val_9 <= -0.1 Then
        re_9 = 2
    ElseIf val_9 <= 0 Then
        re_9 = 1
    Else
        re_9 = 0
    End If
    Cells(19, 4) = re_9
       
End Sub







728x90

'파이썬+VBA' 카테고리의 다른 글

webdriver.Chrome 에러  (0) 2023.02.03
[Python] 다중기업 주요재무현황 추출  (0) 2023.01.06
성별합계  (0) 2022.12.13
매크로 만들기  (0) 2022.11.07
kosis 크롤링  (0) 2022.10.07
728x90

   def api_empolyee(self,resp): #직원현황
        employee = []
        em_num=[]
        em_year=[]
        em_salary=[]
opt1=0
opt2=0
opt3=0
        if resp['status'] == '000':  # 'status': '000' -> 응답이 정상'000' 상태
            for re in resp['list']:  # if resp in resp['list'] : [{ xxxxx ]}
                if re['fo_bbm'] in ['-'] :
opt1 = 1
em_num_x.append('-') //[-]
em_year_x.append('-')
em_salary_x.append('-')
elif re['fo_bbm'] in ['성별합계','성별 합계'] :
opt2 = 1
tmp_num = int(re['sm'].replace(",", "")) #숫자로 바꾸긴해야함
em_num.append(tmp_num) //[1300,1200]
tmp_year = float(re['avrg_cnwk_sdytrn'].replace("년", ".").replace("개월", "").replace(" ", ""))
em_year.append(tmp_year) //[10.1, 12.1]
tmp_salary= int(re['jan_salary_am'].replace(",", "")) 
em_salary.append(tmp_num*tmp_salary) //[1300*5000, 1200*6000]
else #그밖의 모든경우
opt3 = 1
tmp_num = int(re['sm'].replace(",", "")) #숫자로 바꾸긴해야함
em_num_etc.append(tmp_num) // [100,200,300,400] #etc
tmp_year = float(re['avrg_cnwk_sdytrn'].replace("년", ".").replace("개월", "").replace(" ", ""))
em_year_etc.append(tmp_year) //[10.1, 12.1,11.1,13.1] #etc
try: #삼성은 성별합계에만 1인당 연봉이 있고, 부서별론 '-'를 표시하므로 erorr발생 
tmp_salary= int(re['jan_salary_am'].replace(",", "")) 
except:
tmp_salary= 0 #etc
em_salary_etc.append(tmp_num*tmp_salary) //[1300*5000, 1200*6000] or [0,0]
if opt1==1:
employee.append(em_num_x)
employee.append(em_year_x)
employee.append(em_salary_x)
elif (opt2==1 and opt3==1) or (opt2==1 and opt3==0): #성별함계도 있거 일반 부서도 있을때->삼성 LG전자 case
employee.append(sum(em_num)))
employee.append(sum(em_year)/len(em_year))
employee.append(sum(em_salary)/sum(em_num))
else #일반적인경우
employee.append(sum(em_num_etc)))
employee.append(sum(em_year_etc)/len(em_year_etc))
employee.append(sum(em_salary_etc)/sum(em_num_etc))

        while True:
            if len(employee) == 3:
                break
            employee.append('-')
        self.result_empolyee.append(employee)

728x90

'파이썬+VBA' 카테고리의 다른 글

[Python] 다중기업 주요재무현황 추출  (0) 2023.01.06
vba - if 크고 작고고 좀 이상해  (0) 2022.12.19
매크로 만들기  (0) 2022.11.07
kosis 크롤링  (0) 2022.10.07
ipynb 파일을 py파일로 변환하기  (0) 2022.10.04
728x90

https://blog.naver.com/issuebombom/222520724169

https://blog.naver.com/dkfl2003/222891948303

import pyautogui

print(pyautogui.position()) # 마우스 좌표,
pyautogui.moveTo(1166,499) # 마우스 해당 좌표로 이동
pyautogui.click(clicks=1, interval=0) #현재 마우스 위치에서 클릭실행.(click='클릭할횟수','interval='클릭사이의 간격(초단위)')

#마우스제어
#계산기 숫자 1,5,9를 0.5초 간격으로 누릅니다
#1초간 휴식합니다
#위 작업을 총 2번 진행
#for _ in range(2):
#    pyautogui.moveTo(265,619)
#    pyautogui.click(clicks=2, interval=0.5)

# 키보드 제어
pyautogui.moveTo(92,438) # 마우스 해당 좌표로 이동
pyautogui.click(clicks=1, interval=0) #현재 마우스 위치에서 클릭실행.(click='클릭할횟수','interval='클릭사이의 간격(초단위)')
pyautogui.write('startcoding', interval = 0.25) #0.25초 간격으로 startcoding의 철자를 차례대로 쓴다




728x90

'파이썬+VBA' 카테고리의 다른 글

vba - if 크고 작고고 좀 이상해  (0) 2022.12.19
성별합계  (0) 2022.12.13
kosis 크롤링  (0) 2022.10.07
ipynb 파일을 py파일로 변환하기  (0) 2022.10.04
dart api  (0) 2022.09.27
728x90

728x90

'파이썬+VBA' 카테고리의 다른 글

성별합계  (0) 2022.12.13
매크로 만들기  (0) 2022.11.07
ipynb 파일을 py파일로 변환하기  (0) 2022.10.04
dart api  (0) 2022.09.27
곡물가격 크롤링  (0) 2022.09.22

+ Recent posts