Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Excel- Tworzenie wizytówki VCF

JaroFon 16 Dec 2016 18:15 4944 22
Nazwa.pl
  • #1
    JaroFon
    Level 23  
    Witam. Czy istnieje makro którym podczas np. dodawania nowego pracownika do bazy pracowników, utworzyć dla tego pracownika wizytówkę VCF i ułożyć ją w odpowiednim miejscu? Chodzi o taką wizytówkę z danymi typu:
    - Imię i nazwisko
    -Numer telefonu(ów)
    -Adres zamieszkania
    -Adres mail
    -Data urodzenia
    -Dodatkowe informacje typu 'NOTATKI'

    ...taka wizytówka musi bez problemu otworzyć się np. w Outlook lub w telefonie i umożliwić dodania jej do kontaktów
  • Nazwa.pl
  • #2
    JRV
    VBA, Excel specialist
    Jeśli nie istnieje, to trzeba napisać :)
    Można dołączyć przykład takiej wizytówki?
  • Nazwa.pl
  • #4
    JRV
    VBA, Excel specialist
    Jeśli nie zdjęcie, następnie problem jest mały.
  • #5
    JaroFon
    Level 23  
    Jeżeli fotka jest problemem to można ją pominąć
  • #7
    JaroFon
    Level 23  
    No i udało się coś wyczarować z tego i wyszło mi coś takiego jak w załączniku. Działa rewelacyjnie, tworzy idealnie wizytówkę. Wizytówkę bez problemu można zapisać do książki w Outlook lub na Smartfonie. Można dodać jeszcze o wiele więcej opcji ale to mi wystarczy. Jednak jak by było można dodać fotkę to było by rewelacyjnie. No i czy można by zrobić coś z tym że po dodaniu wizytówki do której były wykorzystane dane z polskimi literami to żeby wyświetlał prawidłowo nazwy a nie krzaczyło?
  • #8
    JRV
    VBA, Excel specialist
    W jakiej postaci bedzie fotka w Excel'u ?(format ew. JPG, BMP; w kazdym wierszu lub odwolanie do pliku lub inne)
  • #9
    JaroFon
    Level 23  
    W mojej bazie pracowników do każdego pracownika mam fotke w formacie JPG w folderze:

    Code: vbscript
    Log in, to see the code
  • #11
    JaroFon
    Level 23  
    Dzięki. Widzę że coś z tego wyciągnę. Jak zrobię to dam znać :)

    EDIT
    No niestety z tego linku nic nie wyciągnąłem. Próba utworzenia wizytówki niby wychodzi pomyślnie ale niestety fotka w żaden sposób nie wkleja się do wizytówki i jeszcze gorzej, po utworzeniu wizytówki nie da rady jej otworzyć na Smartfonie ale na Outlook otwiera się. Jak wyłączę opcję wklejania fotki to jest ok, wizytówka otwiera się w Outlook i na Smartfonie, no i dalej nie wiem jak zrobić aby nie krzaczyło jak do wizytówki dodaje się polskie litery. Może jeszcze jakieś inne sugestie?

    Posty scaliłem.
    Proszę byś w przypadku dodawania informacji, gdy nikt jeszcze nie zamieścił odpowiedzi, używał przycisku "zmień", nie publikując postu pod postem.
    RADU23
  • Helpful post
    #12
    JRV
    VBA, Excel specialist
    JaroFon wrote:
    jak zrobić aby nie krzaczyło jak do wizytówki dodaje się polskie litery

    jest to 'Unicode'
    Nie probowales otworzyc wizytowku notatnikiem? Moge i gotowce, ale sprobuj sam
    Zwroc uwage na np. '=54=75=20=7A=61=70=69'

    Dodano po 32 [sekundy]:

    w VBA jest funcja HEX
  • #13
    JaroFon
    Level 23  
    Chyba rozwiązałem problem z krzakami. Na PC w Outlook utworzyłem wizytówkę i ją podglądnąłem w notatniku, wprowadziłem poprawki do VBA i po utworzeniu wizytówki w Excelu prawidłowo wyświetla nazwy z polskimi literami:

    Code: vbscript
    Log in, to see the code


    ...zostanie jeszcze tylko wykombinować jak dodać tą nieszczęsną fotkę :(
  • Helpful post
    #14
    JRV
    VBA, Excel specialist
    CHARSET=windows-1250 - to jest to
    NOTE;CHARSET=WINDOWS-1252 - w notatki to samo,
    (wiki -CP-1250 – strona kodowa używana przez system Microsoft Windows do reprezentacji tekstów w językach środkowoeuropejskich używających alfabetu łacińskiego, na przykład albańskim, chorwackim, czeskim, polskim, rumuńskim, słowackim, słoweńskim, węgierskim)

    Jeśli zauważyłes, w notatniku, Foto zaczyna się odstępu(szpacja)
    wtedy
    Code: vbscript
    Log in, to see the code
  • #15
    JaroFon
    Level 23  
    Racja, w notatkach też musi być 1250 i nie krzaczy. Jeżeli chodzi o fotki to rewelacja, teza dodaje fotkę i bez problemu plik VCF otwiera się w Outlook i Smartfonie, nic nie krzaczy i jest fotka :) . Dzięki bardzo. Dodaję poprawiony załącznik, może ktoś będzie chciał kiedyś skorzystać :) Oczywiście makro można rozbudować o dodatkowe pozycje typu: prywatny, praca, służbowy

    EDIT:

    Przeniosłem makro do mojego docelowego pliku. Mam pytanie. W makro jest kod który mówi z jakiej ścieżki ma pobierać foto. Dostosowałem tą ścieżkę do mojego pliku i jest wszystko ok. Jednak ta ścieżka w moim pliku będzie główną ścieżka z której będę kryształkowy w innych makrach, i żeby nie podawać ileś razy całą linijkę ścieżki to chciałem tą linijkę dodać do modułu MODULES PUBLIC i korzystać tylko z odnośnika do tej ścieżki czyli w moim kodzie "sciezka". Jak dodać do MODULES tą ścieżkę żeby poprawnie działała? Za chiny nie wiem jak to zrobić:

    Code: vbscript
    Log in, to see the code
  • #16
    JRV
    VBA, Excel specialist
    w Public nie moze byc zmienna sciezka(ActiveWorkbook.Path & ), tylko konstanty lub deklaracje funkcje
    Sprobuj tak
    Code: vbscript
    Log in, to see the code

    Lepiej umieścić kod funkcji do modułu, a nie w arkuszu kodu
  • #17
    JaroFon
    Level 23  
    Dzięki, o to chodziło :)

    Code: vbscript
    Log in, to see the code



    EDIT:

    Podczas testowania makra zauważyłem ze wyskakuje jedem maly błąd. Podczas dodawania wizytówki w sytuacji jak dla danego pracownika nie posiadam fotki wyskakuje błąd. Jak podczas dodawania wizytówki zatrzymać dodawanie fotki jeśli nie istnieje?
  • #18
    JRV
    VBA, Excel specialist
    Zwykle IF ... Then
    Code: vbscript
    Log in, to see the code
  • #19
    JaroFon
    Level 23  
    Rozumiem że przez IF ... Then mogę to zrobić, ale nie wiem jak zastosować Twój kod, co dokładnie mam wpisać tu:

    Code: vbscript
    Log in, to see the code
  • #20
    JRV
    VBA, Excel specialist
    Hmm.. to jest z Twojego kodu
    foto = ThisWorkbook.Path & "\" & "elektroda.jpg"

    Dodano po 41 [sekundy]:

    Typ String, sciezka do fotki
  • #21
    JaroFon
    Level 23  
    Robię tak ale to wywala błąd. Już sam nie wiem co jest nie tak. Jak nie ma fotki to nie działa kod. W mojej sytuacji ścieżką dostępu do fotki to: sciezka_foto
  • #22
    JRV
    VBA, Excel specialist
    Myslalem, ze nazwa pliku foto bedzie na arkuszy lub brak jej, jak w "Wizytowki"

    W tym prypadku
    If Dir(sciezka_foto) <> "" Then

    Ponadto
    Open file For Binary Access Read As #1
    ten blok to samo przez If ... Then
  • #23
    BrysonDavis
    Level 1  
    Jeśli chcesz przekonwertować plik Excel do formatu vCard, to możesz przejść do tego programu Excel, XLSX do konwertera vCard na oprogramowanie konwertera kart. Oprogramowanie Eksportuj wiele kontaktów w serii. Ponadto użytkownicy mogą utworzyć pojedynczy plik .vcf dla każdego kontaktu. Umożliwia importowanie pliku VCF w różnych aplikacjach pocztowych i mobilnych konwerterach.
    Więcej informacji: - downloadfreeware.org/xlsx-vcard-converter/