Đưa hình vào Dropdown list (1 người xem)

Liên hệ QC

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

vanduynguyen1983

Thành viên hoạt động
Tham gia
21/6/13
Bài viết
101
Được thích
8
Làm cách nào tạo nút rải xuống chứa các hình như B5 đến B7 khi cần dùng hình nào thi ta chỉ bấm vào nút xuống để chọn hình va các nét vẽ đó mình có thể cố định được không giông như tạo block cho nó vậy . Em có đính kèm file mong anh chị coi file lam giup e voi
 

File đính kèm

Của bạn đây (Mình vẫn chưa hiểu mục đích của bạn nếu có thể đưa file mẫu thật lên thì tốt hơn và phải nói rõ mục đích sử dụng).
 

File đính kèm

Upvote 0
Làm cách nào tạo nút rải xuống chứa các hình như B5 đến B7 khi cần dùng hình nào thi ta chỉ bấm vào nút xuống để chọn hình va các nét vẽ đó mình có thể cố định được không giông như tạo block cho nó vậy . Em có đính kèm file mong anh chị coi file lam giup e voi
Ý của you mình chưa hiểu lắm. You có thể nói rõ hơn được không. Dữ liệu là fì và mong muốn có cái gì. ok
 
Upvote 0
Làm cách nào tạo nút rải xuống chứa các hình như B5 đến B7 khi cần dùng hình nào thi ta chỉ bấm vào nút xuống để chọn hình va các nét vẽ đó mình có thể cố định được không giông như tạo block cho nó vậy . Em có đính kèm file mong anh chị coi file lam giup e voi

Theo mình hiểu thì bạn muốn dùng List trong (Data Validation) để lấy hình vẽ Shapes
hiện tại điều bạn mong muốn chưa thành hiện thực
Mình cũng đã từng nghĩ tới nhưng không thực hiện được với hình vẽ Shapes
 
Lần chỉnh sửa cuối:
Upvote 0
Theo mình hiểu thì bạn muốn dùng List trong (Data Validation) để lấy hình vẽ Shapes
hiện tại điều bạn mong muốn chưa thành hiện thực
Mình cũng đã từng nghĩ tới nhưng không thực hiện được với hình vẽ Shapes

Chẳng có gì là không được cả
Có điều tác giả gửi bài vào box HÀM VÀ CÔNG THỨC, chứng tỏ muốn giải quyết bài toàn bằng các công cụ có sẵn ---> Vậy thì không được là cái chắc rồi (nên tôi chưa tham gia)
Tuy nhiên, nếu lập trình thì vô tư
---------------------------------
Giống vầy đúng không:


Untitled.jpg
 
Lần chỉnh sửa cuối:
Upvote 0
Chẳng có gì là không được cả
Có điều tác giả gửi bài vào box HÀM VÀ CÔNG THỨC, chứng tỏ muốn giải quyết bài toàn bằng các công cụ có sẵn ---> Vậy thì không được là cái chắc rồi (nên tôi chưa tham gia)
Tuy nhiên, nếu lập trình thì vô tư
---------------------------------
Giống vầy đúng không:

Giống lắm rồi thầy ạ
Em cũng đã hỏi nâu rùi nhưng vẫn đang đợi,
Em đang đợi bên này
http://www.giaiphapexcel.com/forum/...ình-ảnh-tự-động-vào-excel&p=496739#post496739
 
Upvote 0
Giống lắm rồi thầy ạ
Em cũng đã hỏi nâu rùi nhưng vẫn đang đợi,
Em đang đợi bên này
http://www.giaiphapexcel.com/forum/...ình-ảnh-tự-động-vào-excel&p=496739#post496739

Thôi thì cứ đưa file (của bài này) lên đây! Bạn tự mình tùy biến nhé (các Shape nằm ở sheet2)
Lưu ý:
- Code nằm tại Module1, Module2 và Sheet1
- Phần code tại Module1 bạn không cần quan tâm, chỉ cần biết xài là được (hàm PictureFromObject)
- Bạn chỉ cần quan tâm phần code ở sheet2 + Module2 ---> Tùy biến nó cho phù hợp với dữ liệu của mình nhé
 

File đính kèm

Upvote 0
Thôi thì cứ đưa file (của bài này) lên đây! Bạn tự mình tùy biến nhé (các Shape nằm ở sheet2)
Lưu ý:
- Code nằm tại Module1, Module2 và Sheet1
- Phần code tại Module1 bạn không cần quan tâm, chỉ cần biết xài là được (hàm PictureFromObject)
- Bạn chỉ cần quan tâm phần code ở sheet2 + Module2 ---> Tùy biến nó cho phù hợp với dữ liệu của mình nhé

Thầy ơi em mở File của thầy nhưng ko được. Nó báo lỗi như hình thầy ạ.
anh_baoloi.JPG
 
Upvote 0
Upvote 0
Mở ở máy em có thông báo theo hình,
Kết quả thì vẫn đúng ý
Em dùng Excel 2010

Bạn SinhThanh ấy đang chơi một mình mà thầy
Có thấy Box bạn ấy kêu gọi gửi File Excel 2003
 

File đính kèm

  • Anh thong bao.jpg
    Anh thong bao.jpg
    17.9 KB · Đọc: 91
Lần chỉnh sửa cuối:
Upvote 0
Mở ở máy em có thông báo theo hình,
Kết quả thì vẫn đúng ý
Em dùng Excel 2010

Cái thông báo này mà hiện ra có nghĩa là Office của bạn đang cài thiếu cái gì đó
(thiếu cái gì tôi không biết)

Bạn SinhThanh ấy đang chơi một mình mà thầy
Có thấy Box bạn ấy kêu gọi gửi File Excel 2003
Ah, hiểu rồi. Bạn ấy đang dùng bộ cài đặt Compatibility Pack để đọc các định dạng Office 2007 ---> Thế thì.. LÚA
(Xài đồ cổ ráng chịu vậy)
 
Upvote 0
Vâng. Bây giờ thì em hiểu cần phải dùng office 2007 or 2010 rồi. Em cảm ơn thầy ạ.
 
Upvote 0
Vâng. Bây giờ thì em hiểu cần phải dùng office 2007 or 2010 rồi. Em cảm ơn thầy ạ.

Không phải CẦN hay không,

Việc dùng phiên bản nào là do ý thích của cá nhân, khả năng của máy tính, túi tiền - không ai ép buộc ai cả,

lỗi mà bạn nêu ở đây là do tại BQT không chú ý cho phep các Thành viên tự ghi và cung cấp thông tin đang dùng Version excel nào tiện cho ng trợ giúp (thường các diễn đàn khác cho thành viên ghi chú phiên bản - giống như ghi chú NƠI CƯ NGỤ).
 
Upvote 0
Chào Thấy !
Em tải file cua thầy về rồi e mở ra có nút rải xuống mà không có hình dạng thanh thép gì hết chỉ khoản trắng không àh
chon ô màu vang nó hiện ImageCombo21 nhấn nút rải xuống nó hiện khoản trắng ạ
 
Upvote 0
Nó giông cái này nè bạn
attachment.php
 
Upvote 0
Cái thông báo này mà hiện ra có nghĩa là Office của bạn đang cài thiếu cái gì đó
(thiếu cái gì tôi không biết)
Em mở các File khác thì bình thường
Thông báo trên em cũng đã từng gặp rồi
không biết có phải do lỗi ở phiên bản Excel 64bit và 32 bit không?
Thầy đang dùng Excel gì vậy? 2010, 2007.. bản bao nhiêu bit ạ
 
Upvote 0
Em mở các File khác thì bình thường
Thông báo trên em cũng đã từng gặp rồi
không biết có phải do lỗi ở phiên bản Excel 64bit và 32 bit không?
Thầy đang dùng Excel gì vậy? 2010, 2007.. bản bao nhiêu bit ạ

Tôi dùng Windows 7 + Office 2010. Tất cả đều là 32 bit bạn à
 
Upvote 0
Cái thông báo này mà hiện ra có nghĩa là Office của bạn đang cài thiếu cái gì đó
(thiếu cái gì tôi không biết)


Ah, hiểu rồi. Bạn ấy đang dùng bộ cài đặt Compatibility Pack để đọc các định dạng Office 2007 ---> Thế thì.. LÚA
(Xài đồ cổ ráng chịu vậy)

Thầy ơi em mở bằng office 2007 vẫn báo lỗi như vậy ạ.
 
Upvote 0

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Em đang có ý định Ứng dụng code của thầy nhưng VBA vẫn còn kém đọc thay đổi một số nội dung nhưng chưa được
1. Em muốn hình vẽ sau khi chọn ở List thì nó được căn vào giữa ô theo chiều dọc và chiều ngang
cái dòng .Top = Target.Top: .Left = Target.Left
Em cho thay đổi thành .Mid
nhưng không được
2. Hiện tại sheet2 có 3 hình Em muốn thêm hình vào Sheet 2 thì phải sửa dòng nào ạ
 
Upvote 0
Em đang có ý định Ứng dụng code của thầy nhưng VBA vẫn còn kém đọc thay đổi một số nội dung nhưng chưa được
1. Em muốn hình vẽ sau khi chọn ở List thì nó được căn vào giữa ô theo chiều dọc và chiều ngang
cái dòng .Top = Target.Top: .Left = Target.Left
Em cho thay đổi thành .Mid
nhưng không được

Bạn để ý đoạn này:
Mã:
Private Sub ImageCombo1_Click()
  Dim strName As String
  On Error Resume Next
  Shapes(ActiveCell.Address).Delete
  strName = Me.ImageCombo1.SelectedItem.Key
  Sheet2.Shapes(strName).Copy
  ActiveCell.PasteSpecial
 [COLOR=#ff0000] [B]Selection[/B][/COLOR].Name = ActiveCell.Address
  ActiveCell.Select
End Sub
Cái thằng Selection chính là hình vẽ đã được gán xuống sheet đấy
Từ đây, muốn canh thế nào thì cứ lôi đầu em Selection ra mà "mần"
Chẳng hạn Selection.Top = ??? : Selection.Left = ??? vân vân... nhưng hổng có cái vụ .Mid đâu nha
====================
2. Hiện tại sheet2 có 3 hình Em muốn thêm hình vào Sheet 2 thì phải sửa dòng nào ạ
Cứ việc thêm, khỏi cần chỉnh code gì cả. Chỉ lưu ý là sau khi thêm xong, chạy Sub Auto_Open để Combo cập nhật là được rồi
 
Lần chỉnh sửa cuối:
Upvote 0
Cái thằng Selection chính là hình vẽ đã được gán xuống sheet đấy
Từ đây, muốn canh thế nào thì cứ lôi đầu em Selection ra mà "mần"
Chẳng hạn Selection.Top = ??? : Selection.Left = ??? vân vân... nhưng hổng có cái vụ .Mid đâu nha

Không biết bạn có tự tính ra được không nhỉ? Chỉ là phép toán cộng trừ nhân chia thôi
Selection.Left = ActiveCell.Left + (ActiveCell.Width - Selection.Width) / 2
Selection.Top = ActiveCell.Top + (ActiveCell.Height - Selection.Height) / 2
Toàn bộ code sửa lại thành:
Mã:
Private Sub ImageCombo1_Click()
  Dim strName As String, pic As Picture
  On Error Resume Next
  Shapes(ActiveCell.Address).Delete
  strName = Me.ImageCombo1.SelectedItem.Key
  Sheet2.Shapes(strName).Copy
  ActiveCell.PasteSpecial
  [COLOR=#ff0000]Set pic = Selection
  pic.Left = ActiveCell.Left + (ActiveCell.Width - pic.Width) / 2
  pic.Top = ActiveCell.Top + (ActiveCell.Height - pic.Height) / 2
  pic.Name = ActiveCell.Address[/COLOR]
  ActiveCell.Select
End Sub
 
Upvote 0
Không biết bạn có tự tính ra được không nhỉ? Chỉ là phép toán cộng trừ nhân chia thôi
Selection.Left = ActiveCell.Left + (ActiveCell.Width - Selection.Width) / 2
Selection.Top = ActiveCell.Top + (ActiveCell.Height - Selection.Height) / 2
Toàn bộ code sửa lại thành:
Mã:
Private Sub ImageCombo1_Click()
  Dim strName As String, pic As Picture
  On Error Resume Next
  Shapes(ActiveCell.Address).Delete
  strName = Me.ImageCombo1.SelectedItem.Key
  Sheet2.Shapes(strName).Copy
  ActiveCell.PasteSpecial
  [COLOR=#ff0000]Set pic = Selection
  pic.Left = ActiveCell.Left + (ActiveCell.Width - pic.Width) / 2
  pic.Top = ActiveCell.Top + (ActiveCell.Height - pic.Height) / 2
  pic.Name = ActiveCell.Address[/COLOR]
  ActiveCell.Select
End Sub

Đúng là Im chiu chiu
cộng trừ nhân chia trong bảng tính thì em còn nghĩ được trong Vba thì khó thật
thầy không chỉ thì em ngồi vò đầu đến ngày mai cũng chưa ra được
đọc đến đây thì em đã hiểu
pic.Left = ActiveCell.Left + (ActiveCell.Width - pic.Width) / 2
pic.Top = ActiveCell.Top + (ActiveCell.Height - pic.Height) / 2
 
Lần chỉnh sửa cuối:
Upvote 0
thay ơi cho e hỏi lam cách nào mình tùy biến cac shape nằm ở sheet2 được thầy , và làm cách nào tạo thêm các [h=2]Dropdown list cho các ô khác vậy thầy[/h]
 
Upvote 0
thay ơi cho e hỏi lam cách nào mình tùy biến cac shape nằm ở sheet2 được thầy , và làm cách nào tạo thêm các Dropdown list cho các ô khác vậy thầy

Bạn để ý khi nhấn Alt + F11 => vào cửa sổ VBA
Kích vào Sheet 1 có đoạn Code
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Range("B5:B15"), Target) Is Nothing Then
If Target.Count = 1 Then
With Me.ImageCombo1
.Visible = True
.Enabled = True
.Top = Target.Top: .Left = Target.Left
.Width = Target.Width: .Height = Target.Height
End With
End If
Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If
End Sub

tạo thêm đến địa chỉ B bao nhiêu thì bạn chỉ cần thay đổi cái dòng màu đỏ đấy thôi
Thêm hình vào sheet2 thì cứ vẽ bình thường nhớ là hình nhiều nét thì phải Group vào nhé hay Copy hình vào bình thường sau đó nhấn Alt+F8 kích đúp Auto_Open để cập nhật thêm hình
 
Upvote 0
Thêm hình vào sheet2 thì cứ vẽ bình thường nhớ là hình nhiều nét thì phải Group vào nhé hay Copy hình vào bình thường sau đó nhấn Alt+F8 kích đúp Auto_Open để cập nhật thêm hình

Làm bằng tay thì làm thế, tuy nhiên ta vẫn có thể tự động hóa (khỏi cần phải chạy Auto_Open). Chẳng hạn dùng sự kiện Worksheet_Deactivate cho Sheet2 thế này:
Mã:
Private Sub Worksheet_Deactivate()
  Auto_Open
End Sub
Điều này có nghĩa là:
- Mỗi lần muốn thêm hình, bắt buộc ta phải vào sheet 2
- Vậy sau khi thêm hình xong, ta di chuyển sang sheet khác thì lập tức sự kiện Worksheet_Deactivate được kích hoạt và chạy Sub Auto_Open
Bạn tự mình tìm hiểu xem
 
Upvote 0
Cảm ơn bạn minh làm được rồi nhưng minh k biết sửa code sao cho các hình ở sheet 1 nó nằm giữa hàng giữa cột mong ban chi dùm mình nhe

Mong thầy giúp đỡ dùm e lam sao khi minh chọn hình ở sheet 1 nó có thể nằm giữa cột và hàng của một ô vậy thầy
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Mong thầy giúp đỡ dùm e lam sao khi minh chọn hình ở sheet 1 nó có thể nằm giữa cột và hàng của một ô vậy thầy

Có thể bạn chưa đọc bài #26 và bài #27
Bạn đọc thử xem nhé

E chưa hiểu công dụng của đoạn Code này thầy ạ

Sub Auto_Close()
Set img = Nothing
End Sub

Chạy nó chưa thấy gì thay đổi em nghĩ thầy định viết thêm đoạn gì đó để đóng cái data list
Em có ứng dụng Code của thầy vào thống kê thép rồi
nhưng Cái Tam giác : Data list hình ấy nhạy cảm quá khi gửi File cho bên dưới công trường kiểm soát lại File thì nhìn thấy chọn được hình sướng quá chọn luôn hình khác thay thế do họ tò mò thấy lạ nên cứ nghịch
Thầy có thể viết thêm một đoạn để khi chạy Code thì data list không chọn được nữa (không thay đổi hình đã chọn)
và khi chạy lại Code thì lại cho Data list thay đổi được
khi protect sheet thì Data list kia sẽ không cho thay đổi nhưng em không muốn protect sheet
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
E chưa hiểu công dụng của đoạn Code này thầy ạ

Sub Auto_Close()
Set img = Nothing
End Sub

Chạy nó chưa thấy gì thay đổi em nghĩ thầy định viết thêm đoạn gì đó để đóng cái data list

Đối với biến Object thì sau khi xong việc người ta thường có động tác "giải phóng tài nguyên"
Đương nhiên bạn không nhìn thấy nó có tác dụng gì rồi nhưng mà.. anh Bill thấy
Ẹc... Ẹc...

Thầy có thể viết thêm một đoạn để khi chạy Code thì data list không chọn được nữa (không thay đổi hình đã chọn)
Chổ này tôi chưa hiểu lắm!
Có phải là: Nếu 1 cell đã có hình rồi thì cóc cho chọn hình khác?
 
Upvote 0
Đoạn code của thầy DU hay quá nhưng mình không hiểu sao ở sheet 1 cai ô chọn hình nhỏ xíu àh mình không con thây hình nữa mà thấy chữ không àh chon đại nó ra hình , bạn giúp minh lam cach nào để thấy rõ đuoc hình không
 
Upvote 0
Chổ này tôi chưa hiểu lắm!
Có phải là: Nếu 1 cell đã có hình rồi thì cóc cho chọn hình khác?
Vâng nó gần như vậy thầy ạ
khi em thống kê song đóng gói gửi File cho người khác kiểm tra thì muốn giải phóng cái Tam giác kia để người ta không chọn được hình khác hình em đã chọn, muốn chọn được hình khác thì phải chạy một đoạn code Open
Còn khi chưa đóng gói (chưa chạy code Close thì vẫn thay đổi được)
ngoài cách Protect sheet vùng có hình ra còn một cách khác là em lưu về dạng xlsx để không còn tí gì về VBA thì người khác cũng không chọn được nhưng như thế thì Ác quá, khi họ bắt em sửa tiếp thì coi như lại phải copy code lại
Có khi nào giải phóng được cái tam giác ấy thì dung lượng File sẽ giảm đi và chạy nhanh hơn
Em thấy lưu ở dạng xlsx dung lượng bằng 1/2 lưu ở dạng xlsm

Đoạn code của thầy DU hay quá nhưng mình không hiểu sao ở sheet 1 cai ô chọn hình nhỏ xíu àh mình không con thây hình nữa mà thấy chữ không àh chon đại nó ra hình , bạn giúp minh lam cach nào để thấy rõ đuoc hình không

Bạn sang cái Sheet 2 Sheet có hình thư viện kéo rộng cột hình này ra điều chỉnh cho hình bên sheet này rộng ra,
Cái chữ đặt tên của bạn có thể dài quá đặt tên lại cho nó ngắn
Kích chọn vào hình cần đổi tên\đưa chuột lên Box hiện địa chỉ ô gần chỗ thanh công thức gõ tên mới , gõ tên ngắn thôi nhé
Bạn vẽ đai vao sheet 2 roi save lại tắt file rồi mở lại la ok àh
Bạn đọc bài #30 và 31 nhé
 
Lần chỉnh sửa cuối:
Upvote 0
Vâng nó gần như vậy thầy ạ
khi em thống kê song đóng gói gửi File cho người khác kiểm tra thì muốn giải phóng cái Tam giác kia để người ta không chọn được hình khác hình em đã chọn, muốn chọn được hình khác thì phải chạy một đoạn code Open
Còn khi chưa đóng gói (chưa chạy code Close thì vẫn thay đổi được)
ngoài cách Protect sheet vùng có hình ra còn một cách khác là em lưu về dạng xlsx để không còn tí gì về VBA thì người khác cũng không chọn được nhưng như thế thì Ác quá, khi họ bắt em sửa tiếp thì coi như lại phải copy code lại
Có khi nào giải phóng được cái tam giác ấy thì dung lượng File sẽ giảm đi và chạy nhanh hơn
Em thấy lưu ở dạng xlsx dung lượng bằng 1/2 lưu ở dạng xlsm

Thì cũng dễ thôi. Bạn có thể dùng 1 cell nào đó trên sheet để "đánh dấu" cho phép ImageCombox hoạt động hoặc không
Ví dụ tôi dùng cell M1 để đánh dấu: Nếu gõ số 1 vào cell M1 thì ImageCombox sẽ được phép hoạt động và ngược lại
Code sẽ được sửa lại như sau:
Mã:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  On Error Resume Next
  If Range("M1").Value = 1 Then
   [COLOR=#ff0000][SIZE=4] 'Đoạn code cũ[/SIZE][/COLOR]
  Else
    Me.ImageCombo1.Enabled = False
    Me.ImageCombo1.Visible = False
    AppActivate ThisWorkbook.Name
  End If
End Sub
Từ bây giờ, khi bạn muốn chèn hình thì gõ số 1 vào cell M1 rồi làm việc bình thường. Xong việc, xóa số 1 ở cell M1 thì mọi thứ liên quan đến ImageCombo lập tức mất tác dụng
Có thể thay cell M1 thành cell nào tùy bạn (mút chỉ tận IV1 cũng được ---> Chỉ mình bạn biết)
 
Upvote 0
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Range("M1").Value = 1 Then
If Not Intersect(Range("B5:B23"), Target) Is Nothing Then
If Target.Count = 1 Then
With Me.ImageCombo1
.Visible = True
.Enabled = True
.Top = Target.Top: .Left = Target.Left
.Width = Target.Width: .Height = Target.Height
End With
End If
Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If

Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If
End Sub


Đoạn code cũ là đoạn màu đỏ trên thầy nhỉ
Em thấy đoạn này
Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If
được lặp lại 2 lần Em đang định sóa bớt 1 đoạn theo kiểu nhìn thấy số ∞ thì dựng đứng thành 8
 
Lần chỉnh sửa cuối:
Upvote 0
Em thấy đoạn này
Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If
được lặp lại 2 lần Em đang định sóa bớt 1 đoạn theo kiểu nhìn thấy số ∞ thì dựng đứng thành 8
Học VBA thì cứ việc mạnh dạn mà "quậy"! Sai thì thôi, làm lại... có gì mà lo
Ẹc... Ec...
 
Upvote 0
Hiếu ơi cho mình hỏi mình insert thêm một sheet nữa gọi là sheet 3 mình copy đoạn code sheet 1 past vào sheet 3 để sử dụng nó báo lỗi như sau :
Option ExplicitPrivate Sub ImageCombo1_Click()
Dim strName As String, pic As Picture
On Error Resume Next
Shapes(ActiveCell.Address).Delete
strName = Me.ImageCombo1.SelectedItem.Key
Sheet2.Shapes(strName).Copy
ActiveCell.PasteSpecial
Set pic = Selection
pic.Left = ActiveCell.Left + (ActiveCell.Width - pic.Width) / 2
pic.Top = ActiveCell.Top + (ActiveCell.Height - pic.Height) / 2
pic.Name = ActiveCell.Address
ActiveCell.Select
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Range("C9:C250"), Target) Is Nothing Then
If Target.Count = 1 Then
With Me.ImageCombo1
.Visible = True
.Top = Target.Top: .Left = Target.Left
.Center = Target.Width: .Height = Target.Height
End With
End If
Else
Me.ImageCombo1.Visible = False
End If
End Sub
các chữ màu đỏ là nó báo lỗi và nó hiện bản thông báo (Compile method or data member not found)vậy mình xử lý sao vậy hiếu
 
Upvote 0
Hiếu ơi cho mình hỏi đoạn code này bạn bỏ vào xài đươc không vậy sao mình past vô xài không được nó báo lỗi Block If Without End IF day là nguyên bản đoạn code mình past vào


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Range("S1").Value = 1 Then
If Not Intersect(Range("C9:C250"), Target) Is Nothing Then
If Target.Count = 1 Then
With Me.ImageCombo1
.Visible = True
.Enabled = True
.Top = Target.Top: .Left = Target.Left
.Width = Target.Width: .Height = Target.Height
End With
End If
Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Hiếu ơi cho mình hỏi đoạn code này bạn bỏ vào xài đươc không vậy sao mình past vô xài không được nó báo lỗi Block If Without End IF day là nguyên bản đoạn code mình past vào


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If Range("S1").Value = 1 Then
If Not Intersect(Range("C9:C250"), Target) Is Nothing Then
If Target.Count = 1 Then
With Me.ImageCombo1
.Visible = True
.Enabled = True
.Top = Target.Top: .Left = Target.Left
.Width = Target.Width: .Height = Target.Height
End With
End If
Else
Me.ImageCombo1.Enabled = False
Me.ImageCombo1.Visible = False
AppActivate ThisWorkbook.Name
End If
End Sub
Nếu bạn trình bày code cho đàng hoàng thế này thì bạn sẽ thấy:

Untitled.jpg
 
Upvote 0

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

Back
Top Bottom