::: 까만콩 빈이네 :::
까만콩 빈이네의 살아가는 이야기를 기록합니다
RSS
  • Home
20160622151956

6월 22 2016

엑셀(EXCEL) – 회사 사용 물질과 협력사 규제 물질 리스트 비교하여 추출

 

요즘 자동차나 화학 계통의 일을 하시는 분은 자사의 제품내에 포함된 물질이 EU나 일본 수출,
아니면 국내 자동차 등의 유해한 물질로 등록된 것이 있는지 메일을 많이 받아 보실 것입니다.
자료로 오는 것이 몇 백개로 자사에 등록된 물질과 비교하는 것이 정말 하나 하나 단순비교를
하게된다면 눈에 핏발이 서고 눈물이 나올 정도입니다.

대부분 제품명과 CAS NO로 처리된 첨부화일이 올텐데요. 자사도 마찬가지로 MSDS 자료를 통한
CAS NO를 리스트로 보관하고 있을 것입니다. 이것을 자동으로 비교하는 루틴을 만들어 사용하면
바로 규제물질과 현 사용물질을 리스트화 시킬 수 있을 것으로 보여 간단하게 만들어 보았습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Option Explicit
 
Sub Harmful_Material_Check()
 
Dim i As Integer
Dim oCel As Range, cCel As Range
Dim OurMat As Range, ChkMat As Range
 
' 우리회사와 체크할 물질의 범위 선정
Set OurMat = Range("C2", Range("C65536").End(xlUp))
Set ChkMat = Range("G2", Range("G65536").End(xlUp))
 
' 속도를 위해 화면 갱신 중지
Application.ScreenUpdating = False
' 기존 자료 삭제
Range("I1", Range("K65536").End(xlUp)).ClearContents
' 제목항 삽입
Cells(1, 9) = Cells(1, 5)
Cells(1, 10) = Cells(1, 6)
Cells(1, 11) = Cells(1, 7)
' 각 물질을 하나씩 비교해서 같으면 특정위치로 옮김
' Trim함수를 쓴 것은 우리 자료나 체크할 자료에
' 혹시 스페이스가 앞뒤로 있을 경우가 있으므로
For Each oCel In OurMat
For Each cCel In ChkMat
If Trim(oCel) = Trim(cCel) Then
Cells(i + 2, 9) = i + 1
Cells(i + 2, 10) = oCel.Offset(0, -1)
Cells(i + 2, 11) = oCel
i = i + 1
Exit For
End If
Next cCel
Next oCel
' 비교된 자료의 컬럼을 글자수에 따라 자동 맞춤
Columns("I:K").AutoFit
Set OurMat = Nothing
Set ChkMat = Nothing
' 화면 갱신
Application.ScreenUpdating = True
 
End Sub

첨부 파일 : 20160622-규제물질 비교 방법

By vinipapa • 무른모 • 0 • Tags: 비교물질 추출, 엑셀

20160617090613

6월 17 2016

엑셀(EXCEL) – 워크북의 모든 PivotTable을 버튼 하나로 모두 갱신하기

누군가에게는 참 간단한 일인데 누군가에게는 너무 절박하고 힘들 일들이
많은 것 같습니다. 어제 잠깐 질문에 간단하게 댓글로 알려드렸는데 이해가
힘드신 모양입니다.

피봇테이블이 8개라 순서대로 하다가 잠시 다른 생각과 다른 일들이 생기면
했는지 안했는지 헷갈리고 다시 한 번 더 갱신하면 되는데 귀찮아서, 바빠서
그냥 갱신하지 않은 피봇테이블을 보고서에 올리는 경우가 있는가 봅니다.
업무를 하다보면 잘 하다가도 실수를 하게 됩니다.

VBA Editor여시고(Alt+F11) 삽입 > 모듈 추가하세요

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Option Explicit
 
Sub Auto_Pivot_Refresh()
 
Dim pt As PivotTable
Dim sht As Worksheet
' 속도를 위해 화면 갱신 중지
Application.ScreenUpdating = False
' 현재 워크북의 모든 시트를 돌며 모든 피봇테이블 갱신
For Each sht In Worksheets
For Each pt In sht.PivotTables
pt.RefreshTable
Next pt
Next sht
' 화면 갱신 활성화
Application.ScreenUpdating = True
 
End Sub

위에 설명보시면 이해하실 것입니다. 그리고 개발도구에서 디자인모드 활성화
옆의 삽입에서 ActiveX 명령 단추 하나 만드시고 그 명령단추 더블 클릭해서
아래 코드 붙여 주시고 저장하면 됩니다. 개발도구 디자인모드 해제!!!

1
2
3
4
5
Private Sub CommandButton1_Click()
Call Auto_Pivot_Refresh
End Sub

필요할 때마다 버튼 눌러주면 현재 워크북의 모든 피벗테이블 갱신합니다.
속도를 위해 화면 갱신을 하지 않고 처리하므로 그냥 버튼 눌러주시면 됩니다.

첨부 파일 : 20160617-Pivot자동 갱신

By vinipapa • 무른모 • 0

20160613162744

6월 13 2016

엑셀(EXCEL) – 피봇으로 정렬된 데이터를 Raw데이터로 분리해서 한셀에 합치기

엑셀이란 프로그램으로 데이터를 다루다 보면 대부분의 데이터들이 격자에 담겨 있어
이것은 (x,y)좌표처럼 어떤 함수로 다룰 수 있다는 것입니다. 그 함수를 찾아내는 것이
VBA를 잘 다루는 능력이라 봅니다.

http://www.clien.net/cs2/bbs/board.php?bo_table=kin&wr_id=3747908

데이터를 격자행으로 사람이 보기좋게 분리해 두었는데 컴퓨터가 보기좋게 행으로
분리하였다가 또 그것을 한 행으로 합치는 것이 위 질문의 요지입니다. 결국 두 액션은
하나로 뭉쳐 하나인 것처럼 보이지만 두 액션이 붙어있다는 것입니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Option Explicit
 
Sub Data_Merge()
 
Dim i As Integer, j As Integer, colcnt As Integer
Dim cel1 As Range, Ref1st As Range
Dim cel2 As Range, Ref2nd As Range
Set Ref1st = Range("A2", Range("A65536").End(xlUp))
Set Ref2nd = Range("B2", Range("B65536").End(xlUp))
' 화면 갱신 중지
Application.ScreenUpdating = False
' 순환하고자 하는 컬럼의 갯수를 세어줌, 적은 경우 직접 세어서 입력
colcnt = Application.CountA(Range("C1", Range("C1").End(xlToRight)))
For Each cel1 In Ref1st ' 첫번째 영역 순환
If Len(cel1) > = Then ' 첫번째 영역이 비어있지 않으면 다음 영역 순환
For Each cel2 In Ref2nd ' 두번째 영역 순환
For i = 0 To colcnt - 1 ' 칼럼 위치별 순환
Cells(j + 1, 7) = cel1 & "-" & cel2 & "-" & Cells(1, i + 3)
Cells(j + 1, 8) = cel2.Offset(0, i + 1)
j = j + 1 ' 컬럼을 증가시킨만큼 행을 이동해 줌
Next i
Next cel2
End If
Next cel1
' 화면 갱신
Application.ScreenUpdating = True
 
End Sub

잘 이해하시면 VBA실력과 데이터를 해석하는 눈이 높아질 것으로 보입니다.
예제보고 열심히 공부하세요.

첨부 파일 : 20160613-분리된 데이터 행으로 통합

By vinipapa • 무른모 • 0

«< 16 17 18 19 20 >»

카테고리

  • 매킨토시 (261)
    • 굳은모 (73)
    • 무른모 (194)
  • 빈이네 (303)
    • 가족들 (107)
    • 까만콩 (60)
    • 엄마아빠 (131)
  • 잡동사니 (175)
    • 수다떨기 (37)
    • 정 보 (127)
    • 책읽기 (11)

그 밖의 기능

  • 로그인
  • 글 RSS
  • 댓글 RSS
  • WordPress.org

태그

AirPlay AirPrint Apple BootCamp bundle Database Design Dock Dropbox Edit Event Excel free iPad iPhone iTunes Limitted Free Mac Macbook Mac Bundle MacJournal Mac OSX Macupdate MobileMe OCR Pebble safari Sale share Snow Leopard software Tip tweet Twitter Update Windows 구입 나들이 맥 무료 빈이 업데이트 엑셀 엑셀(EXCEL) 팁
  • 2024 윤석열 탄핵 집회 참석
  • 맥 마이그레이션 중…
  • 동백
  • 같은 나무에 다른 색 잎 들
  • 여름 햇살

↑

© ::: 까만콩 빈이네 ::: 2025
Powered by WordPress • Themify WordPress Themes