Làm sao để insert ảnh thông qua form (1 người xem)

  • Thread starter Thread starter chjpheo
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

chjpheo

Thành viên mới
Tham gia
26/2/09
Bài viết
24
Được thích
1
Morning All.,
Tối hôm qua e lọ mọ thì cũng xong cái form nhập liệu vào excel nhưng khổ nổi trong bảng của e lại có 1 cột là ảnh minh họa cho sp. e muốn tạo thêm 1 form để insert ảnh vào.
Bác nào biết giúp em với.
e thank trước
EDIT
Y/c nôm na là như thế này nhé bác:
- Mỗi sản phẩm đều được chụp ảnh làm ảnh minh họa. Mỗi khi điền đầy đủ thông tin sản phẩm qua form rồi ta cần chèn thêm ảnh hiển thị sp theo 1 size nhất định vào cột ảnh sản phẩm.
- Ảnh sẽ được chọn 1 file Jpeg.
- Kích thước ảnh gốc lớn hơn rất nhiều so với ảnh sau khi chèn vào excel.
 
Lần chỉnh sửa cuối:
Morning All.,
Tối hôm qua e lọ mọ thì cũng xong cái form nhập liệu vào excel nhưng khổ nổi trong bảng của e lại có 1 cột là ảnh minh họa cho sp. e muốn tạo thêm 1 form để insert ảnh vào.
Bác nào biết giúp em với.
e thank trước


Sử dụng cái có sẳn (chứ mắc gì phải dùng Form cho rắc rối).

Sử dụng cho Excel 2003:

Từ Menu > Insert > Picture > From File cửa sổ Insert Picture hiện ra, tìm nơi đã lưu ảnh mở ra, chọn ảnh và nhấn nút Insert, vậy là đã chèn ảnh xong, nếu ảnh không vừa với Cell thì click vào góc dưới bên phải kéo lên để hiệu chỉnh ảnh.

Còn muốn sử dụng Form thì Up File lên, chứ nêu khơi khơi vậy thì chẳng ai biết giúp như thế nào?
 
Lần chỉnh sửa cuối:
Upvote 0
Morning All.,
Tối hôm qua e lọ mọ thì cũng xong cái form nhập liệu vào excel nhưng khổ nổi trong bảng của e lại có 1 cột là ảnh minh họa cho sp. e muốn tạo thêm 1 form để insert ảnh vào.
Bác nào biết giúp em với.
e thank trước
Đây là 1 cách để chèn ảnh vào ô, bạn tham khảo rồi phát triển thêm. Tải file về giải nén ra thành 1 thư mục rồi chạy thử
 

File đính kèm

Upvote 0
Bài này tác giả hỏi chưa rõ ràng nguồn gốc của ảnh: Dạng File, Object hay trong PictureBox. Mỗi 1 dạng có 1 cơ chế nhập khác nhau. Còn ý tưởng nhập Picture từ Form là hợp lý, chứ như 1 số ý kiến là nhập đầy đủ thông tin rồi quay ra nhập ảnh nó thủ công và mất ý nghĩa của Form nhập liệu.
 
Upvote 0
e đã edit lại bài các bác cùng nhau thảo luận giúp e có cách xử lý tốt nhất nhé
 
Upvote 0
Đây là 1 cách để chèn ảnh vào ô, bạn tham khảo rồi phát triển thêm. Tải file về giải nén ra thành 1 thư mục rồi chạy thử
như bác làm cũng là 1 cách nhưng hơi phiền phức là ảnh và file excel phải cùng tồn tại. Giả sử e xóa mất ảnh gốc nhưng ảnh trong excel thì sao ạ. Với lại e đang nghiên cứu là chèn từng ảnh 1 vào thôi. bác insert phát toàn bộ luôn.
Bác xem có cao kiến gì ko
 
Upvote 0
ồ e vừa lọ mọ ra được đoạn này ko biết xài ra sao nữa. nó chỉ cho phép mở Dialog chọn file
Application.FileDialog(1).Show
Ai viết tiếp hộ e với ạ
 
Upvote 0
mod có thể xóa giúp e threat này đê em lập threat khác chất lượng hơn được ko ạ
 
Upvote 0
Lại vấn đề nhập liệu với UserForm bao gồm insert picture

Hi cả nhà.
Thớt kia e cung cấp ít thông tin quá nên e nhờ mod xóa đi. Giờ e lập thớt này với đầy đủ thông tin và dữ liệu đính kèm để mọi người tham khảo.

Hiện tại code nhập liệu e cũng sơ sơ coi như là xong như sau:
PHP:
eRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
Cells(eRow, 1).Value = txt1.Text
Cells(eRow, 2).Value = txt2.Text
Cells(eRow, 3).Value = txt3.Text
Cells(eRow, 4).Value = cb1.Value
Các bác có thể xem file đính kèm.
Y/c khá khó nữa mà e tìm tài liệu mãi ko có cách giải quyết. là việc insert ảnh sản phẩm dạng jpeg vào cell tương ứng. Minh họa hình ảnh:

attachment.php
 

File đính kèm

Upvote 0
Bạn chỉ hỏi nhưng lại chẳng nghe đọc bao giờ, chính vì vậy mà công sức anh em giúp bạn ở Topic kia thành uổng. Trước hết bạn phải trả lời được:
-Anh của bạn lấy từ đâu: File trên đĩa, mạng. Object lưu trong sheet hay trong ImageBox.
-Nếu là file thì dạng nào:*.gif,*.bmp...
-Load vào thì kích cỡ ra sao: kich cỡ quy định hay bằng Cell.

Bạn cứ hỏi nửa vời thế này mọi người khó đoán ý bạn, mà đoán sai thì công toi.
Không hiểu sao bạn lại gửi cả Form VS Foxpro ở đây.

Thôi thì bạn thử thế này xem sao
(Lưu ý: trong dialog bạn chọn thumbnails để dễ chọn ảnh)
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
của bác lỗi rồi đấy. e ko biết sửa ntn cả bác xem lại hộ e nhé :D e chạy office 2013
 

File đính kèm

  • 1.jpg
    1.jpg
    203.4 KB · Đọc: 57
Lần chỉnh sửa cuối:
Upvote 0
Chjpheo đã tải và giải nén toàn bộ thư mục ra ổ đĩa chưa? Nếu chưa thì rất có thể do không tìm thấy ảnh.
Ngoài ra, nhờ các bạn test kiểm tra giùm trên các phiên bản sau với. Mình đã chạy trên 2003 rất mượt không hề có lỗi như vậy.
 
Upvote 0
Chjpheo đã tải và giải nén toàn bộ thư mục ra ổ đĩa chưa? Nếu chưa thì rất có thể do không tìm thấy ảnh.
Ngoài ra, nhờ các bạn test kiểm tra giùm trên các phiên bản sau với. Mình đã chạy trên 2003 rất mượt không hề có lỗi như vậy.

Có lỗi đấy anh à! Em thí nghiệm trên Excel 2010
Sửa đoạn:
Set MyOb = Sheet1.Pictures.Insert(Me.T_Pic)
Thành
Set MyOb = Sheet1.Pictures.Insert(Me.T_Pic.Text)
là hết lỗi liền
Đôi khi phải TƯỜNG MINH nó mới chắc
Ẹc... Ẹc...
------------
Ngoài ra đoạn này:
Mã:
MyOb.Left = Cl(, 2).Left
MyOb.Top = Cl(, 2).Top
MyOb.Height = Cl(, 2).Height
MyOb.Width = Cl(, 2).Width
Sẽ không ăn thua gì nếu chạy trên phiên bản từ 2007 trở lên và hình vẫn sẽ chạy bậy bạ không nằm gọn trong cell
Anh phải sửa thành:
Mã:
[COLOR=#ff0000]MyOb.ShapeRange.LockAspectRatio = False[/COLOR]
MyOb.Left = Cl(, 2).Left
MyOb.Top = Cl(, 2).Top
MyOb.Height = Cl(, 2).Height
MyOb.Width = Cl(, 2).Width
Thì mới ép phê
 
Lần chỉnh sửa cuối:
Upvote 0
em unrar toàn bộ rồi bác ạ. em chạy trên office 2003 thì lại được. chẳng hiểu sao nữa. các bạn có ghé qua thì test giúp xem sao nhé
 
Upvote 0
ồ được rồi bác ah. chắc em phải xin bác liên lạc học hỏi thêm. E tự học mà cũng chưa biết học từ đâu và ntn
 
Upvote 0
Bạn thay Me.T_Pic thành Me.T_Pic.Text hoặc Me.T_Pic.Value
Sao mọi người sợ viết tường minh thế nhỉ?

Hì, một thói quen xấu mất rồi anh ơi. Em còn bắt buộc cho quen khai Option Explicit chứ trước em còn sử dụng biến loạn cả lên nữa.
Mà cũng chả hiểu ra sao nữa, ngay trong 2003 đôi khi nó nổi hứng bắt lỗi (Nhưng nhiều là không):

Dim a As Variant
a=sheet1.Range("A")

Đại đa số là nó chấp nhận (Như giờ em Test chẳng hạn) nhưng có khi nó bắt lỗi sai kiểu biến và bắt phải viết như sau mới chịu

a=sheet1.Range("A").Value
Em sẽ lưu ý hơn. Thank các bác.
 
Upvote 0
có ai sữa giúp em cái đoạn code này dduojc không ạ

Private Sub CommandButton2_Click()
Dim Pic
ChDrive Left(ThisWorkbook.Path, 1)
ChDir ThisWorkbook.Path
Pic = Application.GetOpenFilename("Toy Picture (*.jpg), *.jpg", , "Chon anh do choi tre em", , False)
If Pic <> False Then
Me.T_Pic = Pic
Me.Image1.Picture = LoadPicture(Pic)
End If
End Sub
 
Upvote 0

Bài viết mới nhất

Back
Top Bottom