엑셀 (xy_excel)

pcell(기초) – 삭제 - 같은 자료 삭제 – 033

작성자
sjpark
작성일
2024-12-07 18:24
조회
76

pcell(기초) – 삭제 - 같은 자료 삭제 – 033

  • 기본자료
같은 것을 삭제하는 형태를 공부하기위해 기본적인 자료의 형태를 먼저 만들면 다음과 같은 것을 이용해서 알아보도록 합니다

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.new_sheet()
sample_data = [
[1, 2, 3, 4, 5, 6, 7, 8, 9],
[1, "", 3, 4,"", 6, "", 8, ""],
["", 2,"", 4,"", 6, "", 8, ""],
[1, "가", 3, 4,"나", 6, "", 8, ""],
[1, "가가", 3, 4,"나", 6, "", 8, ""],
]
excel.write_value_in_range("", [1,1], sample_data)

word-image-2635-1.png
  • 같은자료 – 고유한 자료만 갖고오기

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.new_sheet()
sample_data = [
[1, 2, 3, 4, 5, 6, 7, 8, 9],
[1, "", 3, 4,"", 6, "", 8, ""],
["", 2,"", 4,"", 6, "", 8, ""],
[1, "가", 3, 4,"나", 6, "", 8, ""],
[1, "가가", 3, 4,"나", 6, "", 8, ""],
]
excel.write_value_in_range("", [1,1], sample_data)
aaa = excel.get_unique_value_in_range("", [1,1,5,9])
print(aaa)

word-image-2635-2.png
  • 같은자료 – 영역안의 같은 자료 삭제 (같은 위치에서)

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.delete_same_value_in_range("", [1,1,5,9])

word-image-2635-3.png
  • 같은자료 – 영역안의 같은 자료 삭제 (처음부터)

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.write_unique_value_in_range("", [1,1,5,9])

word-image-2635-4.png
  • 같은자료 - 여러개가 같은 자료 삭제
사용하는 함수는 아래의것이며, 이것은 선택영역안에서 전체라인이 같은 부분만 삭제하거나 알아내는 것도 필요하지만, 일부분의 라인이 같은 것을 삭제하는 기능도 필요합니다

아래의 코드는 선택영역중에서 1,3,4라인의 값이 같은 것은 맨 처음은 남기고 나머지는 라인을 삭제하는 것입니다

word-image-2635-5.png

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.delete_yline_when_same_multi_x_lines("", [1,1,5,10], [1,3,4])

word-image-2635-6.png
  • 같은자료 - 영역안의 연속된 자료삭제

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.new_sheet()
for no in range(5):
excel.write_value_in_cell_as_linked("", [1+no,3], "www.xython.co.kr")

for no in range(5):
excel.write_value_in_cell("", [1+no,5], "www.xython.co.kr")

word-image-2635-7.png

# -*- coding: utf-8 -*-
import xy_excel
excel = xy_excel.xy_excel()

excel.delete_continuous_same_value_in_range("", [1,1,10,10])

word-image-2635-8.png
  • 같은자료 - 연속된 영역의 연속된 같은것만 삭게

# -*- coding: utf-8 -*-
import xy_excel

excel = xy_excel.xy_excel()
excel.new_sheet()

list_2d = [
[1, 2, 3, 4, 5, 6, 7, 8, 9],
[1, None, 3, 4, 5, 6, 7, 8, 9],
[1, 2, 3, 4, 5, 6, 7, 8, 9],
[None,None,None,None,None,None,None,None,None,],
[1, 2, 3, None, 5, 6, 7, 8, 9],
[None, 2, 3, 4, 5, None, None, 8, 9],
[1, 2, 3, 4, None, 6, 7, 8, 9],
[1, 2, 3, 4, 5, 6, 7, 8, 9],]

excel.write_value_in_range("", [1,1], list_2d)

word-image-2635-9.png

엑셀을 가지고 일을 하다보면 연속된영역의 값을 알아내야하는 경우가 가끔 생깁니다.

예를들면, mysql에서 얻어온 자료를 엑셀에다 집어넣고나서 전체의 글자나 색깔의 변경등의 어떤일을 하려면 현재 셀에서 어느부분까지 연속적으로 값이 들어가 있는지를 알아내야 하는 경우가 있습니다.

물론, 현재의 셀에서 결과로 돌아온 mysql의 개수를 알아내는등의 일을 하면 되지만, 이러한 경우말고도 사용하는 경우가 많이 있으니, 후에 필요하실 때 사용하시면 됩니다

그럼 먼저 다음과 같은 자료가 들어있다고 해봅시다

그러면 결과 값으로 현재셀의 아랫부분에 연속된 값을 갖고오는 것입니다

# -*- coding: utf-8 -*-
import xy_excel

excel = xy_excel.xy_excel()
excel.delete_continuous_same_value_in_range("", [1,1,8,8])

word-image-2635-10.png
전체 0

전체 41
번호 썸네일 제목 작성자 작성일 추천 조회
공지사항
xy_excel이란 무엇인가 (python + win32com + excel)
sjpark | 2024.08.17 | 추천 0 | 조회 455
sjpark 2024.08.17 0 455
공지사항
pcell의 기본 사용법
sjpark | 2024.08.17 | 추천 0 | 조회 526
sjpark 2024.08.17 0 526
39
xy_excel(기초) : 2개의 엑셀화일에서 한쪽으로 모든 시트 복사해서 옮기기
sjpark | 2025.04.15 | 추천 0 | 조회 85
sjpark 2025.04.15 0 85
38
xy_excel(기초) - 틀고정
sjpark | 2025.04.12 | 추천 0 | 조회 107
sjpark 2025.04.12 0 107
37
xy_excel(엑셀) - panthom link 만들기
sjpark | 2025.03.15 | 추천 0 | 조회 70
sjpark 2025.03.15 0 70
36
xy_excel(엑셀) - 세로로된 한줄 자료를 그룹으로 묶어서 2차원 자료로 새로운 시트에 쓰기
sjpark | 2025.03.09 | 추천 0 | 조회 71
sjpark 2025.03.09 0 71
35
xy_excel(엑셀) - 그림의 크기조절및 정렬
sjpark | 2025.03.05 | 추천 0 | 조회 73
sjpark 2025.03.05 0 73
34
pcell(쓰기) - 날짜 입력에 대하여 (pywintypes)
sjpark | 2025.02.22 | 추천 0 | 조회 62
sjpark 2025.02.22 0 62
33
pcell(기초) – 삭제 - 같은 자료 삭제 – 033
sjpark | 2024.12.07 | 추천 0 | 조회 76
sjpark 2024.12.07 0 76
32
pcell(기초) – 삭제 - n번마다 삭제
sjpark | 2024.12.06 | 추천 0 | 조회 86
sjpark 2024.12.06 0 86
31
pcell(기초) – 삭제 - 영역의 값 삭제
sjpark | 2024.12.04 | 추천 0 | 조회 86
sjpark 2024.12.04 0 86
30
pcell(기초) – 삭제 - 이름영역 삭제
sjpark | 2024.12.04 | 추천 0 | 조회 78
sjpark 2024.12.04 0 78
29
pcell(기본) - 값의 여러 형태
sjpark | 2024.12.02 | 추천 0 | 조회 90
sjpark 2024.12.02 0 90
28
pcell(기본) - 날짜에 대한 생각
sjpark | 2024.12.02 | 추천 0 | 조회 102
sjpark 2024.12.02 0 102