:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่

Post a reply


This question is a means of preventing automated form submissions by spambots.
Smilies
:D :thup: :cp: :flw: :rz: :sg: :tt: :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :arrow: :ard: :arl: :aru: :| :mrgreen: :geek: :ugeek:

BBCode is ON
[img] is ON
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#10

by lotto009 » Mon Jan 20, 2020 9:37 pm

เรียนอาจาร์ยครับ
ผมใช้วิธีนี้เลยครับ
Ret1 = Application.GetOpenFilename("Excel Files (*.CSV*), *.CSV*", _
, "Please select file", , True)

ขอบคุณครับได้แล้ว

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#9

by snasui » Mon Jan 20, 2020 7:11 pm

lotto009 wrote: Mon Jan 20, 2020 3:40 pm *.xls*", _
, "Please select file", , True)
:D ก่อน "Please select file" มีเครื่องหมาย , สองตัวลองทบทวนต้นฉบับที่ผมโพสต์ใหม่ครับ :roll:

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#8

by lotto009 » Mon Jan 20, 2020 3:40 pm

ผมใส่ครบครับ
ของอาจาร์ย
Ret1 = Application.GetOpenFilename("Excel Files (*.xls*), *.xls*", _
, "Please select file", , True)
ของผมครับ
Ret1 = Application.GetOpenFilename("Excel Files (*.xls*),*.xls*,(*.CSV*),*.CSV*"
, "Please select file", , True)
ไม่ทำงานเลย
ต้องขอโทษด้วยนะครับช่วงนี้งานผมค่อนข้างจะใช้ vba เยอะนิดหน่อย ช่วยดูให้ด้วยนะครับ
ขอบพระคุณมากครับ
อาร์ต

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#7

by logic » Mon Jan 20, 2020 3:16 pm

ใส่ , ครบไหมครับ ❓

ตัว , ใส่ให้ครบตามโค้ดอาจารย์เลยครับ ⬆

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#6

by lotto009 » Mon Jan 20, 2020 3:12 pm

ลองแล้วครับ ไม่ได้ครับ ติดสีเหลืองที่ Private Sub CommandButton1_Click()

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#5

by logic » Mon Jan 20, 2020 3:07 pm

น่าจะเป็นแบบนี้นะครับ

(*.xls*),*.xls*,(*.CSV*),*.CSV*" 👈

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#4

by lotto009 » Mon Jan 20, 2020 2:26 pm

ขออนุญาตเพิมเติมครับ
หา เปิดไฟล์ .csv ได้ด้วยต้องทำอย่างไรครับ
ผมใช้คำสั่งแบบนี้แต่ไม่ทำงานครับ

Code: Select all

  Ret1 = Application.GetOpenFilename("Excel Files  (*.xls*),*.xls*,(*.CSV),*.CSV")_
    , "Please select file")
    If Ret1 = False Then Exit Sub  
    
ขอบพระคุณอาจาร์ยมากครับ
:sg:

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#3

by lotto009 » Wed Jan 15, 2020 9:02 pm

เรียนอาจาร์ยครับ
ขอบพระคุณมากครับ ตรงตามที่ผมต้องการเลย
ดูแลสุขภาพนะครับ
เคารพนับถืออย่างสุง
อาร์ต

Re: VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#2

by snasui » Wed Jan 15, 2020 5:48 pm

:D ตัวอย่าง Code ครับ

Code: Select all

Private Sub CommandButton1_Click()
    Dim wb1 As Workbook, wb2 As Workbook
    Dim Ret1 As Variant, i As Integer
    Dim arrAdd() As Variant
    Set wb1 = ActiveWorkbook

    Ret1 = Application.GetOpenFilename("Excel Files (*.xls*), *.xls*", _
        , "Please select file", , True)
    If TypeName(Ret1) = "Boolean" Then Exit Sub
    arrAdd = Array("A1", "ZZ1", "BA1", "CA1")
    For i = 1 To UBound(Ret1)
        Set wb2 = Workbooks.Open(Ret1(i), False)
        wb2.Worksheets(1).UsedRange.Copy wb1.Worksheets("RF DATABASE").Range(arrAdd(i - 1))
        wb2.Close False
    Next i
End Sub
สามารถเลือก 4 ไฟล์พร้อมกัน หากเลือกครั้งละไฟล์จะต้องเขียนใหม่โดยจะต้องเพิ่มตัวนับว่ามีการ Import เข้ามาแล้วกี่ไฟล์จะได้วางข้อมูลได้ตรงตำแหน่ง สำหรับกรณีนี้ลองเขียนมาเองก่อน ติดตรงไหนค่อยถามกันต่อครับ

VBA-import 4 file.excel ไปไว้ที่Workbook1(Worksheets("DATABASE")โดยกำหนดให้อยู่คนล่ะ columครับ

#1

by lotto009 » Wed Jan 15, 2020 12:18 pm

เรียนอาจาร์ยครับ
ขอความช่วยเหลือในการ import 4 file.excel ไปไว้ที่ Workbook1(Worksheets("DATABASE").Range(A1:Z) ที่เราตอ้งการด้วยครับ
ขั้นตอนคือ
1.Import Workbook2(Worksheets(1).range("A1:Z") copy past ไว้ที่ Workbook1(Worksheets("DATABASE").Range("A1:Z")
ปิดไฟล์Workbook1
2.Import Workbook3(Worksheets(1).range("A1:Z") copy past ไว้ที่ Workbook1(Worksheets("DATABASE").Range("ZZ1:AZ")
ปิดไฟล์Workbook3
3.Import Workbook4(Worksheets(1).range("A1:Z") copy past ไว้ที่ Workbook1(Worksheets("DATABASE").Range("BA1:BZ")
ปิดไฟล์Workbook3
4.Import Workbook5(Worksheets(1).range("A1:Z") copy past ไว้ที่ Workbook1(Worksheets("DATABASE").Range("CA1:CZ")
ปิดไฟล์Workbook4
5.ทำการsave Workbook1(Worksheets("DATABASE")ครับ
สุดท้ายผมแนบcodeมาด้วยนะครับ แต่ไม่ทำงาน
ขอบพระคุณมากครับ
อาร์ต

Code: Select all

Private Sub CommandButton1_Click()
Dim wb1 As Workbook, wb2 As Workbook, wb3 As Workbook, wb4 As Workbook, wb5 As Workbook
    Dim Ret1, Ret2, Ret3, Ret4, Ret5
 
 '-------------------------------------
     Set wb1 = ActiveWorkbook
 
    '~~> Get the File
    Ret1 = Application.GetOpenFilename("Excel Files (*.xls*), *.xls*", _
    , "Please select file")
    If Ret1 = False Then Exit Sub
 'Workbook#2-------------------------------------
 
    Set wb2 = Workbooks.Open(Ret1)
    wb2.Worksheets("Sheet1").Cells.Copy wb1.Worksheets("RF DATABASE").Cells("A1:Z")
    wb2.Close SaveChanges:=False
 '-------------------------------------
 
    Set wb2 = Nothing
    Set wb1 = Nothing
    MsgBox "DONE!!."
    
 'Workbook#3-------------------------------------
 
    Set wb3 = Workbooks.Open(Ret2)
    wb3.Worksheets("Sheet1").Cells.Copy wb1.Worksheets("RF DATABASE").Cells("ZZ1:AZ")
    wb3.Close SaveChanges:=False
 '-------------------------------------
 
    Set wb3 = Nothing
    Set wb1 = Nothing
    MsgBox "DONE!!."
    
 'Workbook#4-------------------------------------
 
    Set wb4 = Workbooks.Open(Ret3)
    wb4.Worksheets("Sheet1").Cells.Copy wb1.Worksheets("RF DATABASE").Cells("BA1:BZ")
    wb4.Close SaveChanges:=False
 '-------------------------------------
 
    Set wb4 = Nothing
    Set wb1 = Nothing
    MsgBox "DONE!!."
    
 'Workbook#5-------------------------------------
 
    Set wb5 = Workbooks.Open(Ret4)
    wb5.Worksheets("Sheet1").Cells.Copy wb1.Worksheets("RF DATABASE").Cells("CA1:CZ")
    wb5.Close SaveChanges:=False
 '-------------------------------------
 
    Set wb5 = Nothing
    Set wb1 = Nothing
    MsgBox "DONE!!."
    
End Sub
    

Attachments
Import_many_file_next colum_samesheet.xlsm
Import_many_file_next colum_samesheet
(30.21 KiB) Downloaded 13 times

Top