C# Excel에 값 쓰기(write) (2) / SendKeys 사용하기
2023. 3. 31. 19:14ㆍ개발 일기/C#
<프로그램 목적>
: 엑셀의 마우스로 활성화(선택) 한 곳에, 특정 데이터 값을 지속적으로 쓰는 것
(실제로는 센서를 연결하지만, 카운트 값으로 대체하였음)
*** 엑셀 라이센스 필요없는 방법입니다. ***
* 엑셀 접근이 필요하다면 → https://reta98.tistory.com/21
특징 정리
- C#에서 엑셀 파일을 access하고 있지 않다. (C# 실행 프로그램과 별개 동작)
- 프로그램 실행과 달리 파일을 따로 열어야 한다.
- Excel 라이센스가 없어도 동작한다.
- window에 active 된 곳에 send하기에 메모장이나 다른 프로그램도 동일하게 동작한다.
코드
* 포인트: SendKeys.Send();
using System;
using System.Windows.Forms;
namespace Excel_Test
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int cnt = 0;
private void input_value()
{
SendKeys.Send("{ESC}");
SendKeys.Send(cnt++.ToString());
}
private void tm_Tick(object sender, EventArgs e)
{
input_value();
}
private void btn_start_Click(object sender, EventArgs e)
{
tm.Start();
}
private void btn_stop_Click(object sender, EventArgs e)
{
tm.Stop();
}
}
}
* ESC 외에도 Ctrl+A 후 작성 등 활용하면 됩니다.
동작
Sendkeys Class 사이트:
https://learn.microsoft.com/en-us/dotnet/api/system.windows.forms.sendkeys?view=windowsdesktop-7.0
SendKeys Class (System.Windows.Forms)
Provides methods for sending keystrokes to an application.
learn.microsoft.com
'개발 일기 > C#' 카테고리의 다른 글
C# Excel 파일 Control (open, save, write) 하기 (1) (0) | 2023.03.30 |
---|