PDA

View Full Version : خروجی اکسل



safari_m4
شنبه 01 آذر 1399, 18:52 عصر
سلام دوستان جهت خروجی اکسل از محیط کد نویسی چگونه سلولها را fit کنم با اندازه متن یعنی اندازه هر سلول به اندازه متن بزرگ شود و تعداد شیتها را که پیشفرض 3 تا است را مثلا 1 عدد کنم با تشکر

the king
شنبه 01 آذر 1399, 22:36 عصر
سلام دوستان جهت خروجی اکسل از محیط کد نویسی چگونه سلولها را fit کنم با اندازه متن یعنی اندازه هر سلول به اندازه متن بزرگ شود و تعداد شیتها را که پیشفرض 3 تا است را مثلا 1 عدد کنم با تشکر

با ()AutoFit محدوده انتخاب شده رو Fit می کنید، مثلا کل خانه های ستون های A الی C رو :

Dim app As New Microsoft.Office.Interop.Excel.Application
app.Workbooks.Add(System.Type.Missing)
Dim w As Microsoft.Office.Interop.Excel.Worksheet = app.ActiveSheet
w.Range("A1:C1").EntireColumn().AutoFit()
app.Quit()


با Sheets.Add شیت جدید اضافه می کنید، مثلا 5 تا شیت جدید :

Dim app As New Microsoft.Office.Interop.Excel.Application
Dim wb As Microsoft.Office.Interop.Excel.Workbook = app.Workbooks.Add(System.Type.Missing)
wb.Sheets.Add(Count:=5)
app.Quit()

safari_m4
یک شنبه 02 آذر 1399, 06:11 صبح
با ()AutoFit محدوده انتخاب شده رو Fit می کنید، مثلا کل خانه های ستون های A الی C رو :

Dim app As New Microsoft.Office.Interop.Excel.Application
app.Workbooks.Add(System.Type.Missing)
Dim w As Microsoft.Office.Interop.Excel.Worksheet = app.ActiveSheet
w.Range("A1:C1").EntireColumn().AutoFit()
app.Quit()


با Sheets.Add شیت جدید اضافه می کنید، مثلا 5 تا شیت جدید :

Dim app As New Microsoft.Office.Interop.Excel.Application
Dim wb As Microsoft.Office.Interop.Excel.Workbook = app.Workbooks.Add(System.Type.Missing)
wb.Sheets.Add(Count:=5)
app.Quit()


اول از همه خیلی خیلی ممنون و تشکر دوست عزیز و تشکر مجدد از اینکه وقت گذاشتین و جواب دادین - در خصوص اضافه کردن شیت عالی بود حالا می خواهیم تعداد را کم کنید از چه فرمولی استفاده کنیم ضمنا با توجه به اینکه در آفیس مثلا 2016 تعداد پیشفرض شیتها 1 عدد می باشد ولی در بعضی ها تعداد شیت های پیشفرض 3 ست حالا فرمولی هست که اول تشخیص دهد اگر تعداد بیشتر از یکی بود بعد عملیات کسر را انجام دهد یا از همه بهتر دستوری که در هر شرایطی تعداد شیت فقط یکی باشد با تشکر قبلی

the king
یک شنبه 02 آذر 1399, 13:38 عصر
اول از همه خیلی خیلی ممنون و تشکر دوست عزیز و تشکر مجدد از اینکه وقت گذاشتین و جواب دادین - در خصوص اضافه کردن شیت عالی بود حالا می خواهیم تعداد را کم کنید از چه فرمولی استفاده کنیم ضمنا با توجه به اینکه در آفیس مثلا 2016 تعداد پیشفرض شیتها 1 عدد می باشد ولی در بعضی ها تعداد شیت های پیشفرض 3 ست حالا فرمولی هست که اول تشخیص دهد اگر تعداد بیشتر از یکی بود بعد عملیات کسر را انجام دهد یا از همه بهتر دستوری که در هر شرایطی تعداد شیت فقط یکی باشد با تشکر قبلی

با Sheets.Count در هر لحظه ای می توانید بررسی کنید که الان چند تا Sheet وجود داره :

Dim wb As Microsoft.Office.Interop.Excel.Workbook = app.Workbooks.Add(System.Type.Missing)
Dim n As Integer = wb.Sheets.Count

و مثلا هر تعداد بیشتر از 1 رو حذف کنید :

While wb.Sheets.Count > 1
wb.Sheets.Item(2).Delete()
End While


با Delete یک Sheet رو حذف می کنید، انتخاب Sheet مثلا بر اساس شماره اندیس ئه که از 1 شروع میشه، مثلا حذف دومین Sheet

wb.Sheets.Item(2).Delete()

یا بر اساس نام Sheet مثلا Sheet1

wb.Sheets.Item("Sheet1").Delete()


اون Item. عضو پیشفرض ئه برای همین نوشتنش اختیاری ئه، مثلا ()wb.Sheets(2).Delete با ()wb.Sheets.Item(2).Delete فرقی نداره.

safari_m4
یک شنبه 02 آذر 1399, 14:38 عصر
با Sheets.Count در هر لحظه ای می توانید بررسی کنید که الان چند تا Sheet وجود داره :

Dim wb As Microsoft.Office.Interop.Excel.Workbook = app.Workbooks.Add(System.Type.Missing)
Dim n As Integer = wb.Sheets.Count

و مثلا هر تعداد بیشتر از 1 رو حذف کنید :

While wb.Sheets.Count > 1
wb.Sheets.Item(2).Delete()
End While


با Delete یک Sheet رو حذف می کنید، انتخاب Sheet مثلا بر اساس شماره اندیس ئه که از 1 شروع میشه، مثلا حذف دومین Sheet

wb.Sheets.Item(2).Delete()

یا بر اساس نام Sheet مثلا Sheet1

wb.Sheets.Item("Sheet1").Delete()


اون Item. عضو پیشفرض ئه برای همین نوشتنش اختیاری ئه، مثلا ()wb.Sheets(2).Delete با ()wb.Sheets.Item(2).Delete فرقی نداره.

خیلی خیلی ممنون با سپاس فراوان کمک عالی و خوبی بود با تشکر مجدد موفق و موید باشید