กฏกติกาของฟอรัม : แจ้งชื่อและนามสกุลจริงในการสมัครสมาชิก--ตั้งชื่อกระทู้ให้ตรงกับปัญหาที่ถาม--เขียนอธิบายคำถามทั้งในตัวกระทู้และในแฟ้มแนบให้ละเอียด--ห้ามใช้คำว่า อ่ะ คับ หรือคำผวน หรือคำที่ไม่มีในพจนานุกรมไทย--โปรดตั้งชื่อแฟ้มให้สื่อถึงปัญหาที่ถาม--อย่าระบุชื่อให้คนใดคนหนึ่งเป็นผู้ตอบ--งดให้ความร่วมมือหรือช่วยตอบคำถาม กระทู้ที่ละเมิดกฏกติกาของฟอรัม
Results 1 to 7 of 7

Thread: การอ้างอิง Range ระหว่าง Sheet

  1. #1
    Excel Expert Volunteer Nongmod's Avatar
    Join Date
    May 2007
    Location
    ศรีราชา ชลบุรี
    Job
    วิทยากร ,ที่ปรึกษา ด้านการเพิ่มผลการผลิต และ Lean Manufacturing
    Version
    Excel2003 Windows XP
    Posts
    169

    Icon7 การอ้างอิง Range ระหว่าง Sheet

    1. ผมมีปัญหาเวลาเขียน Code อ้างอิง Range ระหว่างสอง Sheet ซึ่งรูปแบบการเขียนต้องเป็นแบบไหนครับ
    Range(Cells(i, 59), Cells(i, 69)) = Sheets("shortage").Range(Cells(RowRef, 10), Cells(RowRef, 29)).Value
    ซึ่งในตัวอย่างข้างบนไม่สามารถใช้ได้ครับ รบกวนขอคำแนะนำด้วยครับ
    2. คล้ายๆกับคำถามแรกครับแต่เป็นการ Find ข้าม Sheet โดยที่ไม่ต้องไปเลือก sheet ที่ต้องการ Find ทำได้ไหมครับ
    ปกติผมจะเขียนแบบนี้ครับ
    Sheets(2).select ' ต้องการหาที่ Sheet2 ซึ่งไม่ใช่ active sheet ซึ่งผมต้องการยกเลิกบรรทัดนี้ครับ
    Columns("A:A").select
    RowRef = selection.Find(What:=PartNo, After:=ActiveCell).Row
    รบกวนขอคำแนะนำด้วยครับ:)
    Last edited by Nongmod; 30 Aug 2007 at 17:27.

  2. #2
    Excel Expert Volunteer อรวีร์'s Avatar
    Join Date
    May 2007
    Location
    นนทบุรี&ปทุมธานี
    Job
    IT Expert
    Version
    Excel 2003/2007 & Windows XP
    Posts
    1,535
    Blog Entries
    3

    Default Evaluate( )

    ข้อ 1 ก่อนค่ะ ลองใช้แบบนี้ดูค่ะ
    Range(Cells(i, 59), Cells(i, 69)).Value = Evaluate("shortage!J" & RowRef & ":AC" & RowRef).Value

  3. #3
    Excel Expert Volunteer อรวีร์'s Avatar
    Join Date
    May 2007
    Location
    นนทบุรี&ปทุมธานี
    Job
    IT Expert
    Version
    Excel 2003/2007 & Windows XP
    Posts
    1,535
    Blog Entries
    3

    Default Set Range=Workbook.Worksheet.Range.Find( )

    ข้อ 2 ค่ะ
    Dim FoundCell As Range
    Set FoundCell = Sheets(2).Columns(1).Find(What:=PartNo)
    If FoundCell Is Nothing Then
    MsgBox "ค้นหา " & PartNo & " ไม่พบค่ะ"
    Else
    RowRef = FoundCell.Row
    End If

  4. #4
    Excel Expert Volunteer Nongmod's Avatar
    Join Date
    May 2007
    Location
    ศรีราชา ชลบุรี
    Job
    วิทยากร ,ที่ปรึกษา ด้านการเพิ่มผลการผลิต และ Lean Manufacturing
    Version
    Excel2003 Windows XP
    Posts
    169

    Default

    ขอบคุณมากๆครับ จะลองนำไปใช้ดูนะครับ:D

  5. #5
    Excel Expert Volunteer Nongmod's Avatar
    Join Date
    May 2007
    Location
    ศรีราชา ชลบุรี
    Job
    วิทยากร ,ที่ปรึกษา ด้านการเพิ่มผลการผลิต และ Lean Manufacturing
    Version
    Excel2003 Windows XP
    Posts
    169

    Default

    Quote Originally Posted by อรวีร์ View Post
    ข้อ 1 ก่อนค่ะ ลองใช้แบบนี้ดูค่ะ
    Range(Cells(i, 59), Cells(i, 69)).Value = Evaluate("shortage!J" & RowRef & ":AC" & RowRef).Value
    ผมรบกวนถามเพิ่มนะครับ ในกรณีที่ คอลัมน์ไม่คงที่เราจะแทนค่าด้วยตัวแปลยังไงครับ ซึ่งตัวแปลรับค่ามาเป็นตัวเลขครับ

  6. #6
    Excel Expert Volunteer อรวีร์'s Avatar
    Join Date
    May 2007
    Location
    นนทบุรี&ปทุมธานี
    Job
    IT Expert
    Version
    Excel 2003/2007 & Windows XP
    Posts
    1,535
    Blog Entries
    3

    Icon7

    SourceRow = i
    SourceCol = 59
    RowRef = 4
    FromCol = 10
    ToCol = 29
    Addr = Range(Cells(RowRef, FromCol), Cells(RowRef, ToCol)).Address
    Range(Cells(SourceRow, SourceCol), Cells(SourceRow, SourceCol + (ToCol - FromCol))).Value = Evaluate("shortage!" & Addr).Value

  7. #7
    Excel Expert Volunteer Nongmod's Avatar
    Join Date
    May 2007
    Location
    ศรีราชา ชลบุรี
    Job
    วิทยากร ,ที่ปรึกษา ด้านการเพิ่มผลการผลิต และ Lean Manufacturing
    Version
    Excel2003 Windows XP
    Posts
    169

    Default

    คุณอรวีขอบคุณมกาๆเลยครับ ผมเคยใช้ address แล้วแต่เกิดปัญหาจึงคิดว่าใช้ไม่ได้
    แต่เมื่อลองดู Code ของคุณอรวีร์แล้ว ทำให้นึกออกว่า Object ที่ผมเลือกค้างอยู่คือ Chart ทำให้ใช้ไม่ได้ จึงเกิด Error 1004

Similar Threads

  1. Replies: 1
    Last Post: 4 Nov 2009, 08:01
  2. Replies: 5
    Last Post: 20 Apr 2009, 22:59
  3. Replies: 6
    Last Post: 6 Oct 2008, 13:20
  4. Replies: 2
    Last Post: 19 Aug 2008, 11:15
  5. Replies: 1
    Last Post: 20 Jun 2008, 11:02

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •