Page 6 of 6

Re: การแปลงข้อมูล

Posted: Sat Oct 01, 2011 10:58 pm
by Bafnet
สวัสดีครับ ขอบคุณมากๆครับ สมบูรณ์ครับ
snasui wrote:Sub SumLastCellToStartCell()
Dim r As Range
Set r = Range("BU" & Rows.Count).End(xlUp).Offset(1, 0)
r = "=sum(R1C:R[-1]C)"
r.Offset(0, 1) = "=sum(R1C:R[-1]C)"
r.Offset(0, 2) = "=sum(R1C:R[-1]C)"
r.Offset(0, 3) = "=sum(R1C:R[-1]C)"
r.Offset(0, 4) = "=sum(R1C:R[-1]C)"
r.Offset(0, 5) = "=sum(R1C:R[-1]C)"
End Sub
ผมปรับนิดหน่อยเพราะบางRange เป็นลำดับที่ , วันที่

Sub SumLastCellToStartCell()
Dim r As Range
Set r = Range("BU" & Rows.Count).End(xlUp).Offset(1, 0)
r = "Total"
r.Offset(0, 1) = "xxx"
r.Offset(0, 2) = "=sum(R1C:R[-1]C)"
r.Offset(0, 3) = "=sum(R1C:R[-1]C)"
r.Offset(0, 4) = "=sum(R1C:R[-1]C)"
r.Offset(0, 5) = "xxx"
End Sub
ความสัมพันธ์ของการกำหนดแถวและคอลัมม์ ใน Offset คงต้องตั้งใจศึกษามากกว่านี้
ขอบพระตุณมากครับ

Re: การแปลงข้อมูล

Posted: Tue Oct 04, 2011 7:58 pm
by Bafnet
สวัสดีครับอาจารย์
มีเรื่องรบกวนหน่อยครับ
=IF(L5="","",IF(ISNUMBER(FIND("นาย",L5)),SUBSTITUTE(L5,"นาย","คุณ"),IF(ISNUMBER(FIND("นาง",L5)),SUBSTITUTE(L5,"นาง","คุณ"),IF(ISNUMBER(FIND("น.ส.",L5)),SUBSTITUTE(L5,"น.ส.","คุณ"),IF(ISNUMBER(FIND("นางสาว",L5)),SUBSTITUTE(L5,"นางสาว","คุณ"),L5)))))

คำอื่นแก้เป็น คุณได้หมดครับ ยกเว้นคำว่านางสาว กลายเป็นคุณสาว
ไม่ทราบว่าแก้อย่างไรครับ
รบกวนด้วยครับ :roll:

Re: การแปลงข้อมูล

Posted: Tue Oct 04, 2011 8:22 pm
by snasui
:D อยู่ที่การจัดลำดับครับ ให้สลับเอาสูตรที่เปลี่ยน นางสาว เป็น คุณ ขึ้นก่อนสูตรที่ใช้เปลี่ยน นาง เป็น คุณ เนื่องจาก If จะให้ความสำคัญเรียงตามลำดับครับ

Re: การแปลงข้อมูล

Posted: Sat Oct 08, 2011 12:28 am
by Bafnet
สวัสดีครับอาจารย์
งานแข่งขันนวัตกรรม ระดับภาคใต้ได้สิ้นสุดแล้วครับ
โปรแกรมช่วยงานชิ้นนี้ได้รางวัลชนะเลิศครับ ต้องขอขอบคุณอาจารย์อีกครั้ง
ซึ่งงานชิ้นนี้จะเป็นตัวแทนภาคใต้เข้าแข่งขันระดับประเทศต่อไป
มีเรื่องรบกวนขอคำแนะนำอาจารย์หน่อยนะครับ
ทางคณะกรรมการเขาคอมเมนต์มาว่าเนื่องจากข้อมูลที่ทำการบันทึกมีความสำคัญ
ควรจะต้องมีระบบรักษาความปลอดภัยในการเข้าถึงข้อมูล
จึงอยากขอคำแนะนำจากอาจารย์ว่าสมมุติว่าผมกำหนดรหัสผ่านในการเข้าถึงสมุดงานที่ชื่อ
data.xlsx คือ 230314
ในคำสั่งที่เราไปสั่งเปิดสมุดงานดังกล่าวดังโค๊ดข้างล่างนี้จะปรับเป็นอย่างไรครับ

Code: Select all

Dim wb As Variant
Dim rt As Range
Dim rs As Range
Dim myData As Range
If TextBox86.Value = "" Or TextBox91.Value = "" Then
Exit Sub
End If
Application.ScreenUpdating = False
Sheet1.Range("F66:M66").Value = Sheet1.Range("F65:M65").Value
Set wb = Workbooks.Open("C:\DumP\DATA\base\data.xlsx", False, False)
ActiveWorkbook.Worksheets("Offline").Select
With Workbooks("data.xlsx").Worksheets("Offline")
Set rs = Workbooks("data.xlsx").Worksheets("Offline").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
Set myData = Workbooks("data.xlsx").Worksheets("Offline").Range("A:G")
End With

Code: Select all

Set wb = Workbooks.Open("C:\DumP\DATA\base\data.xlsx", False, False)
กรณีการตั้งรหัสผ่านการเปิดสมุดงานเช่นนี้ ตอนปิดไม่ต้องสั่งเข้ารหัสใช่ไหมครับ
แค่
wb.close True ก็ได้ใช่ไหมครับ
รบกวนอาจารย์ด้วยนะครับ
ขอบคุณครับ

Re: การแปลงข้อมูล

Posted: Sat Oct 08, 2011 6:54 am
by snasui
:D ยินดีกับรางวัลชนะเลิศระดับภาคใต้ด้วยนะครับ ถือเป็นความสำเร็จที่ยิ่งใหญ่น่าภาคภูมิใจ ก็ขอให้ได้รางวัลใดรางวัลหนึ่งในระดับประเทศครับ

กรณีกำหนด Password การเปิดไฟล์ เมื่อเปิดด้วย Code และไม่ต้องการให้ถาม Password สามารถเขียน Code ตามด้านล่างครับ

Code: Select all

Set wb = Workbooks.Open("C:\DumP\DATA\base\data.xlsx", False, False, password:="230314")
ตอนสั่งปิดเราไม่ต้องใส่ Password แต่อย่างใดครับ

Re: การแปลงข้อมูล

Posted: Thu Oct 27, 2011 8:06 pm
by Bafnet
สวัสดีครับ...อาจารย์
ผมหายไปนานหวังว่าอาจารย์คงสบายดีนะครับ
ตอนนี้ผมต้องเตรียมงานนำเสนอผลงาน
แบงค์กำหนดวันแข่งขันระดับประเทศแล้วครับคือวันที่ 29 พ.ย.
ก็จะพยายามทำให้ดีที่สุดครับ อีกอย่างตอนนี้โปรแกรมดังกล่าวได้ถูกปล่อยให้
พนักงานในพื้นที่ใช้งานกันแล้ว ซึ่งก็เริ่มเจอBug บ้างประปรายแต่พอจะแก้ไขได้
แต่ที่หนักกว่า Bug คือความต้องการของผู้ใช้รู้สึกจะมีความต้องการอันนั้นอันนี้เพิ่มขึ้นอย่างมากมาย
สงสัยกะว่าไม่ต้องทำมือกันซะอย่างงั้น :roll:
วันนี้ผมมีเรื่องมารบกวนขอความช่วยเหลือจากอาจารย์หน่อยครับ
ผมมีชุดข้อมูลอยู่ที่ RangeA:A พอจะมีสูตรใดบ้างครับที่ทำให้เราทราบว่าข้อมูลที่เราระบุ
อยู่ในลำดับที่เท่าไรของชุดข้อมูลใน Range ดังกล่าว
ขอบพระคุณมากครับ :oops:
index.xlsx

Re: การแปลงข้อมูล

Posted: Thu Oct 27, 2011 8:14 pm
by snasui
:D ลองตามนี้ครับ

ที่เซลล์ P13 คีย์

=MATCH(O13,A:A,0)

Enter